Handheld gaming console

ABSTRACT

A gaming console including a housing configured for handheld manipulation. A processor is contained within the housing and configured for executing a gaming application. Memory is contained within the housing and configured for storing executables of the gaming application. At least one control button is exposed on the housing and is configured for receiving input from a user that provides an instruction for the gaming application. The gaming console includes a high definition (HD) display for displaying the gaming application.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/730,940, entitled “CLOUD BASED VIRTUALZIED GRAPHICS PROCESSING FORREMOTE DISPLAYS,” with filing date Nov. 28, 2012, and having attorneydocket number NVID-P-SC-12-0727-US0, which is herein incorporated byreference in its entirety.

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/730,939, entitled “CLOUD BASED VIRTUALZIED GRAPHICS PROCESSING FORREMOTE DISPLAYS,” with filing date Nov. 28, 2012, and having attorneydocket number NVID-P-SC-12-0728-US0, which is herein incorporated byreference in its entirety.

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/749,224, entitled “NETWORK-ATTACHED GPU DEVICE,” with filing dateJan. 4, 2013, and having attorney docket number NVID-P-SC-12-0814-US0,which is herein incorporated by reference in its entirety.

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/749,231, entitled “THOR SYSTEM ARCHITECTURE,” with filing date Jan.4, 2013, and having attorney docket number NVID-P-SC-12-0470-US0, whichis herein incorporated by reference in its entirety.

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/874,056, entitled “THOR SYSTEM ARCHITECTURE,” with filing date Sep.5, 2013, and having attorney docket number NVID-P-SC-12-0470-USX, whichis herein incorporated by reference in its entirety.

The present application claims priority to and the benefit of thecommonly owned, provisional patent application, U.S. Ser. No.61/874,078, entitled “NETWORK-ATTACHED GPU DEVICE,” with filing dateSep. 5, 2013, and having attorney docket number NVID-P-SC-12-0814-USX,which is herein incorporated by reference in its entirety.

The present application is related to copending U.S. patent applicationSer. No. 13/727,357, “VIRTUALIZED GRAPHICS PROCESSING FOR REMOTEDISPLAY,” filed on Dec. 26, 2012, with Attorney Docket No.NVID-P-SC-09-0210-US1, which is incorporated herein by reference for allpurposes.

BACKGROUND

Historically, an application such as a video game was executed (played)using a personal computer (PC) or using a console attached to atelevision. A user purchased or rented a game, which was loaded onto thePC or inserted into the game console and then played in a well-knownmanner.

More recently, online gaming has become popular. An online game isplayed over a network such as the Internet. The game is loaded onto auser's device while other software needed to play the game resides on aserver that is accessed via the network. Online gaming allows multipleusers to compete against each other in the game environment provided bythe software on the server.

In addition, mobile gaming has become popular. For example, a mobiledevice (e.g., phone) may provide a video game to a user that can becontrolled through, for example, the touchscreen controls of the mobilephone. These controls are virtually created and displayed on thetouchscreen. Because such mobile phones are not manufacturedspecifically for gaming, the processing power of such mobile phones isoften too low for many games. Another problem with mobile phones is thatthey are often unable to support certain games because such gamesrequire a certain operating system environment to run. Further, thevirtual buttons take up valuable screen space, thereby reducing theoverall display of the game to the user.

Furthermore, virtual control buttons simulated through the touchscreenof the display provides a poor interface between the user and the game.It is difficult to gain a tactile interaction with a virtual buttonsince the button is virtualized on a flat screen. Without a tactilereference, the only way to ensure that the virtual button is beingengaged is to physically look at the finger and the virtual buttonsimultaneously. This may take the eye of the gamer away from the screenat a crucial point in a game. Also, the buttons are limited to the frontsurface of the mobile device. Since the buttons are virtually created,these buttons can only be presented on the touch screen display.Competition for screen space may cause the number of buttons to bereduced, or to be rendered so small that they are difficult to use.

SUMMARY

In embodiments of the present invention, a computing device isdisclosed. The computing device includes a housing configured forhandheld manipulation. A processor is contained within the housing andconfigured for executing a gaming application. Memory is also continuedwithin the housing and is configured for storing executables of thegaming application. The computing device includes at least one controlbutton that is exposed on the housing, and is configured for receivinginput from a user that provides an instruction for the gamingapplication. The computing device includes a high definition (HD)display for displaying video from the gaming application.

In another embodiment, a computer implemented method for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes executing a gamingapplication on a handheld computing device. The method further includesreceiving an input originating from at least one control button, whereinthe input provides an instruction for the gaming application. The methodfurther includes displaying video of the gaming application on an HDdisplay of the handheld computing device.

In another embodiment, a computer implemented for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes executing a gamingapplication on a handheld gamin console, wherein the gaming consolecomprises a housing configured for handheld manipulation, a processorconfigured for executing the gaming application, memory configured forstoring the gaming application, and at least one controlling deviceexposed on the housing and configured for receiving input from aninteraction of a controlling device that provides an instruction handledby the gaming app. The method includes generating video of the executedgaming application. The method includes streaming the video to a seconddevice for displaying the video.

In still another embodiment, a computing device is described. Thecomputing device comprises a housing configured for handheldmanipulation. The computing device comprises a processor containedwithin the housing and configured for executing the gaming application.The computing device comprises memory contained within the housing andconfigured for storing executables of the gaming application. Thecomputing device includes at least one controlling device exposed on thehousing and configured for receiving input from an end user thatprovides an instruction handled by the gaming application. The computingdevice includes a video encoder for encoding video from the gamingapplication. The computing device includes a peer-to-peer communicationinterface configured to transmit the encoded video to a second devicefor display.

In another embodiment, a computer implemented for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes receiving at ahandheld computing device encoded video from a remote computing deviceover a communication network, wherein the remote device is configuredfor executing a gaming application generating video that is encoded intothe encoded video, wherein the handheld computing device comprises ahousing configured for handheld manipulation and at least onecontrolling device exposed on the housing. The method includes decodingthe encoded video. The method includes displaying the decoded video on adisplay of the handheld computing device.

In another embodiment, a computer implemented for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes executing a gamingapplication one remote device. The method includes generating video ofthe gaming application at the remote device, and encoding the video. Themethod includes transmitting the encoded video to a handheld computingdevice over a communication network, wherein the handheld computingdevice comprises a housing configured for handheld manipulation and atleast one controlling device exposed on the housing, wherein thehandheld computing device displays decoded video based on the encodedvideo.

In still another embodiment, a computing device is described. Thecomputing device comprises a housing configured for handheldmanipulation. The device includes at least one controlling deviceexposed on the housing and configured for receiving input from a userthat provides an instruction handled by a gaming application executed bya remote computing device. The device further includes a communicationinterface for establishing communication over a communication networkbetween the computing device and the remote computing device, whereinthe remote coupling device is configured for generating video of thegaming application and encoding the video. The device includes areceiver for receiving the encoded video, and a decoder for decoding theencoded video. The device includes an HD display for displaying thedecoded video.

In another embodiment, a computer implemented for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes executing a gamingapplication at a first computing device. The method includes generatingvideo of the gaming application at the first computing device. Themethod includes encoding the video into an encoded video stream at thefirst computing device. The method includes receiving an input based onan interaction with at least one controlling device of a secondcomputing device, wherein the input provides an instruction handled bythe gaming application, wherein the second computing device comprises ahandheld computing device, wherein communication is established betweenthe first and second computing device over a communication network. Themethod includes receiving the encoded video stream at a third device,wherein the encoded video stream is transmitted from the first computingdevice to the third device over the communication network.

In another embodiment, a computer implemented for computing isdisclosed. In other embodiments, a non-transitory computer readablemedium is disclosed having computer-executable instructions for causinga computer system to perform a method for computing. In still otherembodiments, a computer system is disclosed comprising a processor andmemory coupled to the processor and having stored therein instructionsthat, if executed by the computer system, cause the computer system toexecute a method for computing. The method includes executing a gamingapplication at a first electronic device. The method includes generatingvideo of the gaming application at the first electronic device. Themethod includes encoding the video into an encoded video stream at thefirst electronic device. The method includes receiving an input based onan interaction with at least one controlling device of a secondelectronic device, wherein the input provides an instruction handled bythe gaming application, wherein the second electronic device comprises ahandheld computing device, wherein communication is established betweenthe first and second electronic device over a communication network. Themethod includes displaying at a third electronic device the encodedvideo stream that is decoded

In another embodiment, a system for computing is described. The systemincludes a first electronic device configured for executing a gamingapplication and for generating video of the gaming application. Thesystem includes a video encoder at the first electronic device forencoding the video into an encoded video stream. The system includes asecond electronic device comprising a handheld computing device, whereinthe second electronic device is configured for receiving an input basedon an interaction with at least one controlling device of a secondelectronic device, wherein the input provides an instruction handled bythe gaming application. The system includes a communication network fordelivering the input from the second electronic device to the firstelectronic device. The system includes a third electronic device fordisplaying the encoded video stream that is decoded

In still another embodiment, a method for computing is described. Themethod includes executing a plurality of gaming applications at aplurality of handheld computing devices, wherein each of the pluralityof handheld computing devices comprises: a housing configured forhandheld manipulation; a processor contained within the housing andconfigured for executing the gaming application; memory contained withinthe housing and configured for storing executables of the gamingapplication; and at least one controlling device exposed on the housingand configured for receiving input from an end user that provides aninstruction handled by the gaming application. The method includesgenerating a plurality of videos of the plurality of gaming applicationsat the plurality of handheld computing devices. The method includesestablishing communication between the plurality of handheld computingdevices over a communication network. The method includes integratingexecution of the plurality of gaming applications in a multi-playermode. The method includes displaying the plurality of videos at theplurality of handheld computing devices.

In another embodiment, a system for computing is described. The systemincludes a plurality of handheld computing devices configured forexecuting a plurality of gaming applications, wherein each of theplurality of handheld computing device comprises: a housing configuredfor handheld manipulation; a processor contained within the housing andconfigured for executing one of the plurality of gaming applications;memory contained within the housing and configured for storingexecutables of the gaming application; and at least one controllingdevice exposed on the housing and configured for receiving input from anend user that provides an instruction handled by one of the gamingapplications. The system includes a plurality of videos of the pluralityof gaming applications generated by the plurality of handheld computingdevices, wherein execution of the plurality of gaming applications isintegrated in a multi-player mode. The system includes a communicationnetwork facilitating communication between the plurality of handheldcomputing devices. The system includes a plurality of displays at theplurality of handheld computing devices for displaying the plurality ofvideos.

In another embodiment, a method for computing is described. The methodincludes executing a plurality of gaming applications at a plurality ofhandheld computing devices, wherein each of the handheld computingdevices comprises: a housing configured for handheld manipulation; aprocessor contained within the housing and configured for executing thegaming application; memory contained within the housing and configuredfor storing executables of the gaming application; and at least onecontrolling device exposed on the housing and configured for receivinginput from an end user that provides an instruction handled by thegaming application; generating a plurality of videos of the plurality ofgaming applications at the plurality of handheld computing devices. Themethod includes establishing communication between the plurality ofhandheld computing devices over a communication network. The methodincludes integrating execution of the plurality of gaming applicationsin a multi-player mode. The method includes displaying the plurality ofvideos at a second electronic device.

In another embodiment, a system for computing is described. The stemincludes a plurality of handheld computing devices, wherein each of saidplurality of handheld computing device comprises: a housing configuredfor handheld manipulation; a processor contained within said housing andconfigured for executing said gaming application; memory containedwithin said housing and configured for storing executables of saidgaming application; and at least one controlling device exposed on saidhousing and configured for receiving input from an end user thatprovides an instruction handled by said gaming application. The systemincludes a plurality of videos of said plurality of gaming applicationsgenerated by said plurality of handheld computing devices, whereinexecution of said plurality of gaming applications is integrated in amulti-player mode. The system includes a communication networkfacilitating communication between said plurality of handheld computingdevices. The system includes a second electronic device configured fordisplaying said plurality of videos in a plurality of windows.

These and other objects and advantages of the various embodiments of thepresent disclosure will be recognized by those of ordinary skill in theart after reading the following detailed description of the embodimentsthat are illustrated in the various drawing figures.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthis specification and in which like numerals depict like elements,illustrate embodiments of the present disclosure and, together with thedescription, serve to explain the principles of the disclosure.

FIG. 1 depicts a block diagram of an exemplary computer system suitablefor implementing embodiments according to the present disclosure.

FIG. 2 is a block diagram of an example of a client device capable ofimplementing embodiments according to the present invention.

FIG. 3 is a block diagram of an example of a network architecture inwhich client systems and servers may be coupled to a network, accordingto embodiments of the present invention.

FIG. 4A is a diagram of an exemplary handheld gaming console, accordingto embodiments of the present invention.

FIG. 4B is a diagram of an exemplary handheld gaming console, accordingto embodiments of the present invention.

FIG. 5 is a diagram of an exemplary handheld gaming console coupled withan external display, according to embodiments of the present invention.

FIG. 6A is a block diagram of a handheld gaming console communicativelycoupled with an app store, according to embodiments of the presentinvention.

FIG. 6B is a flow diagram 600B illustrating a method for providingsupport for a gaming application, in accordance with one embodiment ofthe present disclosure.

FIG. 7 is a block diagram of a handheld gaming console communicativelycoupled with a client application (app) store and a third party gamingsource, according to embodiments of the present invention.

FIG. 8 is an illustration of a exemplary network environment 800 withinwhich a handheld gaming console and/or computing device 890 isconfigured for controlling the actions within a gaming application, inaccordance with one embodiment of the present disclosure.

FIG. 9A is a block diagram 900A of a handheld gaming console 720communicatively coupled with a display 950, according to embodiments ofthe present invention.

FIG. 9B is a block diagram of a handheld gaming console communicativelycoupled with a display, according to embodiments of the presentinvention.

FIG. 10A is a block diagram of a handheld gaming console 1000A, inaccordance with one embodiment of the present disclosure.

FIG. 10B is a flow diagram illustrating a method for providing supportfor a gaming application executable on a handheld gaming console and adisplay on a second device, in accordance with one embodiment of thepresent disclosure.

FIG. 11A is a block diagram of a handheld gaming console communicativelycoupled with a locally-based server, according to embodiments of thepresent invention.

FIG. 11B is a block diagram 1100B of the handheld gaming console 720communicatively coupled with the cloud-based server 1110 that is in turncommunicatively coupled with a set-top box 1115, according toembodiments of the present invention.

FIGS. 12A-B are flow diagrams illustrating methods for executing agaming application on a remote processing device and displaying video ona handheld gaming console, in accordance with embodiments of the presentdisclosure.

FIGS. 13A-B are block diagrams of a handheld gaming console providinginput controls to a back-end server executing a gaming application, anda third electronic device displaying video from the gaming application,in accordance with embodiments of the present disclosure.

FIG. 14 is a flow diagram 1400 illustrating a method for implementing agaming application across multiple devices, in accordance with oneembodiment of the present disclosure.

FIG. 15 is an illustration of a system environment 1500 in which aplurality of handheld gaming consoles are executing a plurality ofgaming applications in a multi-player mode, in accordance with oneembodiment of the present disclosure.

FIG. 16 is a flow diagram illustrating a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at the plurality of handheld gaming consoles in accordancewith embodiments of the present disclosure.

FIG. 17 is a flow diagram illustrating a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at a plurality of windows of a display, in accordance withembodiments of the present disclosure.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the various embodiments of thepresent disclosure, examples of which are illustrated in theaccompanying drawings. While described in conjunction with theseembodiments, it will be understood that they are not intended to limitthe disclosure to these embodiments. On the contrary, the disclosure isintended to cover alternatives, modifications and equivalents, which maybe included within the spirit and scope of the disclosure as defined bythe appended claims. Furthermore, in the following detailed descriptionof the present disclosure, numerous specific details are set forth inorder to provide a thorough understanding of the present disclosure.However, it will be understood that the present disclosure may bepracticed without these specific details. In other instances, well-knownmethods, procedures, components, and circuits have not been described indetail so as not to unnecessarily obscure aspects of the presentdisclosure.

Some portions of the detailed descriptions that follow are presented interms of procedures, logic blocks, processing, and other symbolicrepresentations of operations on data bits within a computer memory.These descriptions and representations are the means used by thoseskilled in the data processing arts to most effectively convey thesubstance of their work to others skilled in the art. In the presentapplication, a procedure, logic block, process, or the like, isconceived to be a self-consistent sequence of steps or instructionsleading to a desired result. The steps are those utilizing physicalmanipulations of physical quantities. Usually, although not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated in a computer system. It has proven convenient at times,principally for reasons of common usage, to refer to these signals astransactions, bits, values, elements, symbols, characters, samples,pixels, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the present disclosure,discussions utilizing terms such as “executing,” “receiving,”“connecting,” “navigating,” “facilitating,” “installing,” or the like,refer to actions and processes (e.g., in flowcharts 6B, 10A-B, 12A-B,and 13, 14, 16, and 17 of the present Application) of a computer systemor similar electronic computing device or processor (e.g., computersystem 100 and client device 200). The computer system or similarelectronic computing device manipulates and transforms data representedas physical (electronic) quantities within the computer system memories,registers or other such information storage, transmission or displaydevices.

FIGS. 6B, 10A-B, 12A-B, and 13, 14, 16, and 17 are flowcharts ofexamples of computer-implemented methods for implementing a handhelddevice that is configured for playing gaming applications, according toembodiments of the present invention. Although specific steps aredisclosed in the flowcharts, such steps are exemplary. That is,embodiments of the present invention are well-suited to performingvarious other steps or variations of the steps recited in theflowcharts.

Other embodiments described herein may be discussed in the generalcontext of computer-executable instructions residing on some form ofcomputer-readable storage medium, such as program modules, executed byone or more computers or other devices. By way of example, and notlimitation, computer-readable storage media may comprise non-transitorycomputer storage media and communication media. Generally, programmodules include routines, programs, objects, components, datastructures, etc., that perform particular tasks or implement particularabstract data types. The functionality of the program modules may becombined or distributed as desired in various embodiments.

Computer storage media includes volatile and nonvolatile, removable andnon-removable media implemented in any method or technology for storageof information such as computer-readable instructions, data structures,program modules or other data. Computer storage media includes, but isnot limited to, random access memory (RAM), read only memory (ROM),electrically erasable programmable ROM (EEPROM), flash memory or othermemory technology, compact disk ROM (CD-ROM), digital versatile disks(DVDs) or other optical storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium that can be used to store the desired information and that canaccessed to retrieve that information.

Communication media can embody computer-executable instructions, datastructures, and program modules, and includes any information deliverymedia. By way of example, and not limitation, communication mediaincludes wired media such as a wired network or direct-wired connection,and wireless media such as acoustic, radio frequency (RF), infrared andother wireless media. Combinations of any of the above can also beincluded within the scope of computer-readable media.

FIG. 1 is a block diagram of an example of a computing system 100capable of implementing embodiments of the present disclosure. Computingsystem 100 broadly represents any single or multi-processor computingdevice or system capable of executing computer-readable instructions.Examples of computing system 100 include, without limitation,workstations, laptops, client-side terminals, servers, distributedcomputing systems, handheld devices, or any other computing system ordevice. In its most basic configuration, computing system 100 mayinclude at least one processor 105 and a system memory 110.

It is appreciated that computer system 100 described herein illustratesan exemplary configuration of an operational platform upon whichembodiments may be implemented to advantage. Nevertheless, othercomputer system with differing configurations can also be used in placeof computer system 100 within the scope of the present invention. Thatis, computer system 100 can include elements other than those describedin conjunction with FIG. 1. Moreover, embodiments may be practiced onany system which can be configured to enable it, not just computersystems like computer system 100. It is understood that embodiments canbe practiced on many different types of computer systems 100. System 100can be implemented as, for example, a desktop computer system or servercomputer system having a power general-purpose CPUs coupled to adedicated graphics rendering GPU. In such an embodiment, components canbe included that add peripheral buses, specialized audio/videocomponents, I/O devices, and the like. Similarly system 100 can beimplemented as a handheld device (e.g., cell phone, etc.) or a set-topvideo game console device, such as, for example Xbox®, available fromMicrosoft corporation of Redmond, Wash., or the PlayStation3®, availablefrom Sony Computer Entertainment Corporation of Tokyo, Japan. System 100can also be implemented as a “system on a chip”, where the electronics(e.g., the components 105, 110, 115, 120, 125, 130, 150, and the like)of a computing device are wholly contained within a single integratedcircuit die. Examples include a hand-held instrument with a display, acar navigation system, a portable entertainment system, and the like.

In the example of FIG. 1, the computer system 100 includes a centralprocessing unit (CPU) 105 for running software applications andoptionally an operating system. Memory 110 stores applications and datafor use by the CPU 105. Storage 115 provides non-volatile storage forapplications and data and may include fixed disk drives, removable diskdrives, flash memory devices, and CD-ROM, DVD-ROM or other opticalstorage devices. The optional user input 120 includes devices thatcommunicate user inputs from one or more users to the computer system100 and may include keyboards, mice, joysticks, touch screens, and/ormicrophones.

The communication or network interface 125 allows the computer system100 to communicate with other computer systems via an electroniccommunications network, including wired and/or wireless communicationand including the Internet. The optional display device 150 may be anydevice capable of displaying visual information in response to a signalfrom the computer system 100. The components of the computer system 100,including the CPU 105, memory 110, data storage 115, user input devices120, communication interface 125, and the display device 150, may becoupled via one or more data buses 160.

In the embodiment of FIG. 1, a graphics system 130 may be coupled withthe data bus 160 and the components of the computer system 100. Thegraphics system 130 may include a physical graphics processing unit(GPU) 135 and graphics memory. The GPU 135 generates pixel data foroutput images from rendering commands. The physical GPU 135 can beconfigured as multiple virtual GPUs that may be used in parallel(concurrently) by a number of applications executing in parallel.

Graphics memory may include a display memory 140 (e.g., a frame buffer)used for storing pixel data for each pixel of an output image. Inanother embodiment, the display memory 140 and/or additional memory 145may be part of the memory 110 and may be shared with the CPU 105.Alternatively, the display memory 140 and/or additional memory 145 canbe one or more separate memories provided for the exclusive use of thegraphics system 130.

In another embodiment, graphics processing system 130 includes one ormore additional physical GPUs 155, similar to the GPU 135. Eachadditional GPU 155 may be adapted to operate in parallel with the GPU135. Each additional GPU 155 generates pixel data for output images fromrendering commands. Each additional physical GPU 155 can be configuredas multiple virtual GPUs that may be used in parallel (concurrently) bya number of applications executing in parallel. Each additional GPU 155can operate in conjunction with the GPU 135 to simultaneously generatepixel data for different portions of an output image, or tosimultaneously generate pixel data for different output images.

Each additional GPU 155 can be located on the same circuit board as theGPU 135, sharing a connection with the GPU 135 to the data bus 160, oreach additional GPU 155 can be located on another circuit boardseparately coupled with the data bus 160. Each additional GPU 155 canalso be integrated into the same module or chip package as the GPU 135.Each additional GPU 155 can have additional memory, similar to thedisplay memory 140 and additional memory 145, or can share the memories140 and 145 with the GPU 135.

FIG. 2 is a block diagram of an example of an end user or client device200 capable of implementing embodiments according to the presentinvention. In the example of FIG. 2, the client device 200 includes aCPU 205 for running software applications and optionally an operatingsystem. The user input 220 includes devices that communicate user inputsfrom one or more users and may include keyboards, mice, joysticks, touchscreens, and/or microphones.

The communication interface 225 allows the client device 200 tocommunicate with other computer systems (e.g., the computer system 100of FIG. 1) via an electronic communications network, including wiredand/or wireless communication and including the Internet. The decoder255 may be any device capable of decoding (decompressing) data that maybe encoded (compressed). For example, the decoder 255 may be an H.264decoder. The display device 250 may be any device capable of displayingvisual information, including information received from the decoder 255.The display device 250 may be used to display visual informationgenerated at least in part by the client device 200. However, thedisplay device 250 may be used to display visual information receivedfrom the computer system 100. The components of the client device 200may be coupled via one or more data buses 260. Further, the componentsmay or may not be physically included inside the housing of the clientdevice 200. For example, the display 250 may be a monitor that theclient device 200 communicates with either through cable or wirelessly.

Relative to the computer system 100, the client device 200 in theexample of FIG. 2 may have fewer components and less functionality and,as such, may be referred to as a thin client. However, the client device200 may include other components including all those described abovewith regard to the computer system 100, for example, graphics system 230that may be similar to graphics system 130 of FIG. 1. In general, theclient device 200 may be any type of device that has display capability,the capability to decode (decompress) data, and the capability toreceive inputs from a user and send such inputs to the computer system100. However, the client device 200 may have additional capabilitiesbeyond those just mentioned. The client device 200 may be, for example,a personal computer, a tablet computer, a television, a hand-held gamingsystem, or the like.

FIG. 3 is a block diagram of an example of a network architecture 300 inwhich client systems 310, 320, and 330 and servers 340 and 345 may becoupled to a network 350. Client systems 310, 320, and 330 generallyrepresent any type or form of computing device or system, such ascomputing system 110 of FIG. 1.

Similarly, servers 340 and 345 generally represent computing devices orsystems, such as application servers or database servers, configured toprovide various database services and/or run certain softwareapplications. Network 350 generally represents any telecommunication orcomputer network including, for example, an intranet, a wide areanetwork (WAN), a local area network (LAN), a personal area network(PAN), or the Internet.

With reference to computing system 100 of FIG. 1, a communicationinterface, such as communication interface 125, may be used to provideconnectivity between each client system 310, 320, and 330 and network350. Client systems 310, 320, and 330 may be able to access informationon server 340 or 345 using, for example, a Web browser or other clientsoftware. Such software may allow client systems 310, 320, and 330 toaccess data hosted by server 340, server 345, storage devices360(1)-(L), storage devices 370(1)-(N), storage devices 390(1)-(M), orintelligent storage array 395. Although FIG. 3 depicts the use of anetwork (such as the Internet) for exchanging data, the embodimentsdescribed herein are not limited to the Internet or any particularnetwork-based environment.

In one embodiment, all or a portion of one or more of the exampleembodiments disclosed herein are encoded as a computer program andloaded onto and executed by server 340, server 345, storage devices360(1)-(L), storage devices 370(1)-(N), storage devices 390(1)-(M),intelligent storage array 395, or any combination thereof. All or aportion of one or more of the example embodiments disclosed herein mayalso be encoded as a computer program, stored in server 340, run byserver 345, and distributed to client systems 310, 320, and 330 overnetwork 350.

Methods and Systems for Implementing a Handheld Gaming Console

FIG. 4A is a diagram of an exemplary handheld gaming console 410,according to embodiments of the present invention. The gaming console410 includes a main console body 415 coupled with a console display 450,in one embodiment.

The handheld gaming console 410 is similar to the computer system 100 ofFIG. 1 or the client device 200 of FIG. 2 in embodiments. For example,the handheld gaming console 410 includes a CPU or processer, memory,storage, graphics system, communication interface, and so on. Further,the handheld gaming console 410 includes additional components like anaudio processing system or other components as discussed below. Inembodiments, these components are partially or fully coupled with oneanother in different configurations through, for example, a data bus.

As discussed above, the handheld gaming console 410 runs at least oneoperating system and/or software application. For example, the softwareapplication includes interactive media like a video game or anyapplication operable to display video content, e.g. movies, web browser,etc.

The software application is coupled with a graphics system, which inturn is coupled with the console display 450, in one embodiment. Forexample, the graphics system processes data from the softwareapplication in order to generate pixel data for display as images orvideo, on for example, the console display 450. In still anotherexample, the software application provides instructions, commands,and/or other data to the graphics system in order for the graphicssystem to generate an image intended for display or known by thesoftware application.

The main console body 415 includes a user interface, in one embodiment.The user interface includes physically manipulatable controls includingbut not limited to analog joysticks 425, individual buttons 422, andbutton groups 420 with various buttons. In addition, the console display450 may be a touchscreen display operable for physical interaction, forexample by a finger or a stylus. In one embodiment, the display 450comprises a high definition (HD) display that is capable of displayingvideo of a higher resolution than standard video, such as 720p, 1080p,etc. In another embodiment, the display is a 3D display. These improveddisplays are suitable for displaying images from games that takeadvantage of the current trends in technology, and give the user anenhanced viewing experience.

As a result, a user is able to hold the handheld gaming console 410 andinteract with the software application, for example a video game, movie,web browser, and so on, by using the physically manipulatable controls.While the handheld gaming console 410 includes a touchscreen consoledisplay 450 in one embodiment, a user may have more control through thephysically manipulatable controls and therefore enjoy an improved gamingexperience.

Further, because the handheld gaming console 410 is a standalonecomputer gaming system that is comparatively smaller and lighter than atraditional gaming console that is stationary, and because the handheldgaming console 410 includes both physically manipulatable controls and adisplay, the handheld gaming console 410 is mobile. For example, a useris able to carry the handheld gaming console 410 between different roomsin a house, or leave the house entirely while still able to interactwith the handheld gaming console 410.

The handheld gaming console 410 includes one or more communicationinterface components. For example, the handheld gaming console 410includes a wireless network adapter operable to communicate with awireless access point (e.g., a wireless router) and ultimatelycommunicate with further networks (e.g., the Internet), in oneembodiment. Alternatively or in addition, the adaptive game controller310 includes a Bluetooth adapter operable to communicate with otherBluetooth devices, in another embodiment. In some embodiments, thewireless connection includes Wi-Fi, Wi-Fi Direct for peer-to-peercommunication. In still other embodiments, the handheld gaming console410 comprises a wired communication interface.

In some embodiments, the handheld gaming console 410 includes a cellularnetwork adapter operable to communicate over a cellular network. Forexample, the communication interface supports wireless 3G and/orwireless long term evolution LTE (4G) communication. As a result, whenthe handheld gaming console 410 is within the range of a wirelessnetwork, it is configurable to connect to the wireless network or thecellular network. When the handheld gaming console 410 is outside therange of a wireless network, it is configurable to connect to thecellular network to continue receiving network access.

The handheld gaming console 410 includes an environmentalmotion-tracking component that also includes a camera, in oneembodiment. The environmental motion-tracking component tracks movementin the surrounding environment (e.g., the movement of a user's body) andprovide information associated with the tracked movement to the handheldgaming console 410. As a result, the handheld gaming console 410 iscontrolled based in part on motions or movement of a user, in oneembodiment.

In another embodiment, the handheld gaming console 410 includes aninternal motion-tracking component that may include a gyroscopic sensor,accelerometer sensor, or the like. The handheld gaming console 410 alsoincludes an electronic compass sensor, in one embodiment. The internalmotion-tracking component tracks movement of the handheld gaming console410, for example by movements made by a user. As such, informationassociated with the tracked movement is provided to the handheld gamingconsole 410. As a result, the handheld gaming console 410 iscontrollable based in part on the motion of the handheld gaming console410.

The console display 450 is operable to fold over the main console body415, thereby at least partially covering the physically manipulatablecontrols, in one embodiment. The console display 450 may be coupled withthe main console body 415 with one or more hinges that allow the consoledisplay 450 to swing open and closed. In still another embodiment, acover (not shown) is configured to cover and protect the display 450.For example, a cover is attachable by magnetic attraction at one or moremagnetic contact points. Removal of the cover is achieved by overcomingthe magnetic attraction.

The handheld gaming console 410 includes batteries that provide power.The batteries may be rechargeable batteries. That is, an internal powersource is configured to a sole source of power to the gaming console410. In one embodiment, the power source is sufficient to provideextended hours of gaming. For example, a user may play games for 4-6hours, watching moves for 10+ hours, web browsing for 20+ hours, or playmusic for 40+ hours, in embodiments. Alternatively, or in addition, thehandheld gaming console 410 may be operable to connect to a power outletto be directly powered or to recharge rechargeable batteries. In thismanner, the handheld gaming console 410 is configured as a stand-alonesystem capable of storing, executing and displaying gaming applicationsfor a user. In some embodiments, the form factor is larger than a mobilephone to give the user a more enhanced and prolonged viewing experience.

The handheld gaming console 410 includes a force feedback vibrationcomponent, in one embodiment. The force feedback vibration componentcauses the handheld gaming console 410 to vibrate in response to eventsof a software application. For example, the force feedback vibrationcomponent vibrates when a character shoots a weapon or takes on damagein a video game.

FIG. 4B is a diagram of the exemplary handheld gaming console 410,according to embodiments of the present invention. The view shown inFIG. 4B is a backside view of the handheld gaming console 410 of FIG.4A. The handheld gaming console 410 includes various communicationports. For example, the handheld gaming console 410 includes a removablestorage port 435, a bus port 436, an external display port 437, and/oran audio port 438.

The removable storage port 435 is operable to connect with storagemedia, such as, an SD card or CompactFlash. Such media storesinformation stored by a game, for example, checkpoints or user profiles.Such media stores information like movies, music, and photos. The busport 436 allows the handheld gaming console 410 to connect with otherdevices, in one embodiment. For example, the bus port 436 includes a USBport, FireWire port, Ethernet port, and so on. The bus port 436 allowsconnection to USB thumb drives or USB external drives for read/writeaccess to additional storage.

The external display port 437 allows the handheld gaming console 410 toconnect with external displays. For example, the external display port437 includes an HDMI port, Thunderbolt port, or the like. The audio port438 is operable to provide audio generated by the handheld gamingconsole 410. For example, the audio port 438 includes a mini jack port,micro jack port, TOSLINK port, or the like. Accordingly, a user is ableto connect a sound system or headset to the audio port 438.

In one embodiment, the handheld gaming console 410 includes built-inspeakers 445 that are operable to play back audio associated with thesoftware application or operating system running on the handheld gamingconsole 410. The handheld gaming console 410 includes an acousticwaveguide system or physical structure for guiding sound waves toenhance the quality, effect, and/or amplitude of the audio associatedwith the software application or operating system, in embodiments.

Alternatively, the handheld gaming console 410 includes a Bluetoothcomponent, in one embodiment. In addition to being capable of connectingwith various devices, the Bluetooth component is operable to send andreceive audio wirelessly.

In one embodiment, the display 450 includes a built-in camera 440, whichmay allow a software application or operating system running on thehandheld gaming console 410 capture photos, video, or other visual data(e.g. surrounding light intensity, movement of the console 410, movementof objects in the surrounding area).

The camera 440 includes a lens and/or sensor that allow fast highdynamic range (HDR) imaging, in one embodiment. HDR provides a largerdynamic range between the lightest and darkest areas of an image thanconventional digital imaging methods or photographic methods. HDRprocessed images more accurately represent the range of intensity levelsfound in real scenes and is often captured by way of multiple photos ofthe same scene at different exposures.

However, conventional methods are often very slow to create an HDRprocessed image, for example, because they require multiple images to betaken and then processed. Embodiments of the present invention provide alens and/or sensor that captures multiple exposure levels of a scenewithin one capture of a scene, and thereby shortening the amount of timenecessary for capturing the necessary images. Embodiments of the presentinvention further provide fast image processing within an integratedchip of a camera system of the camera 440 or a GPU coupled thereto. As aresult, the speed of generating HDR photos is greatly increased, andbecause the delay between subsequent HDR photos is greatly decreased,HDR processed videos are produced, in one embodiment. For example, HDRphotos may be generated at the rate of 20 frames per second, 30 framesper second, or more. As a result, the consecutive photos may togetherform HDR video.

It should be noted that the physically manipulatable controls, ports,and other components of the handheld gaming console 410 are not limitedto being either on a front or backside of the handheld gaming console410 or the main console body 415. For example, some or all ports and abuilt-in camera may be included on the front side of main console body415 or a housing of the console display 450. Or, for example, thehandheld gaming console 410 may include backside buttons 430.

FIG. 5 is a diagram of the exemplary handheld gaming console and/orcomputing device 510 coupled with an external display 555, according toembodiments of the present invention. The external display may be anydisplay, e.g., a large screen High Definition television. The handheldgaming console 510 may connect with the external display 555 to providevideo, audio, and other data to the external display 555.

The handheld gaming console 510 and the external display 555 may beoperable to provide similar embodiments as those discussed below, forexample, with respect to FIGS. 9A and 9B, except that the handheldgaming console 510 may communicate with the external display 555 througha wired connection. For example, the handheld gaming console 510 maydisplay the same video on the console display 550 and the externaldisplay 555. Alternatively, the handheld gaming console 510 may displaya private view on the console display 550 and a spectator view on theexternal display 555.

Handheld gaming console 510 includes gaming controller 515 that mayinclude various physically manipulatable controls such as one or moreanalog joysticks 525 and button groups 520 with various buttons.

In addition, as shown in FIG. 5, a handheld gaming controller 550includes a wireless or wired communication interface that is operable tocommunicate with the handheld gaming console 510. In one embodiment, thehandheld gaming controller 550 may communicate with the handheld gamingconsole 510 through a wireless network or through Bluetooth technology.As a result, a user may play games or control other content beingexecuted on the handheld gaming console 510 through the handheld gamingcontroller 550. It should be appreciated that the handheld gamingcontroller 510 may be operable to communicate with multiple handheldgaming controllers simultaneously through a wired or wirelessconnection.

More particularly, FIG. 6A is a block diagram of a handheld gamingconsole 600A, in accordance with one embodiment of the presentdisclosure. The handheld gaming console 600A provides additionalfunctionality to the computer system 100 and/or client device 200. Forinstance, the handheld gaming console 600A includes a housing configuredfor handheld manipulation. The handheld gaming console 600A includes aprocessor contained within the housing and configured for executing, atleast, a gaming application, and memory for storing executables of thegaming application. For example, the processor includes a multi-coreprocessor (not shown), and multiple parallel based GPUs for videoencoding and graphics processing. The CPU and GPU processors areincluded in a system on a chip (SOC) form, (e.g., ARM architecture), inone embodiment. For example, four fully powered CPU cores and a singlelower powered CPU core provides general processing power. For instance,the lower powered CPU is configurable to perform less demanding tasks,such as, playing music. In one embodiment, the handheld gaming console600A is run on an Android® operating system, and as such is configuredto run any Android based gaming application. The handheld gaming console600A includes at least one control button that is exposed on the housingand configured for receiving input from an end user that provides aninstruction for the gaming application. An HD display is included fordisplaying video and/or images of the gaming application. In onefurther, embodiment, the handheld gaming console 600A includes an activecooling system configured for cooling. As such, the gaming console 600Ais a stand-alone computing platform configured for executing anddisplaying a gaming application.

As shown, the handheld gaming console 600A includes a native gamingresource application 605 that is installed on the device. The nativeapplication 605 comprises a front-end portal application executable bythe console 600A. That is, the end user is presented with the front endportal application when running the gaming console 600A (e.g., uponstartup). In particular, the native application 605 is configured forexecuting a front end portal application that is affiliated with anentity associated with the handheld device. As an example, the nativeapplication is configured to provide notification of gaming applicationsthat are supported by the handheld computing console.

More particularly, in one embodiment, the native application isassociated with and supports the gaming experience surrounding thegaming console 600A. That is, the native application includes multiplefeatures to enhance the end user's gaming environment and experiencewith the console 600A, and acts as a dashboard for facilitating thesefeatures. For instance, the native application provides an interface toa social network that is supported by a web client content provider. Inaddition, the native application 605 is periodically updated through aconnection to the client provider. In another implementation, the nativeapplication includes a list of recommended games produced and customizedfor execution on the handheld device 600A. For example, the portalapplication 605 is configured to provide notification of games such as,gaming applications that are supported by and customized for executionby the gaming console 600A. The native application 605 also includes alist of games installed, associated with, and/or accessible by thegaming console 600A, and includes a link to begin execution of aselected game.

The handheld gaming console 600A includes a navigator 610 that isconfigured to provide a direction connection to a third party contentprovider. For instance, upon receiving a selection by an end user forpurchasing a gaming application, the native/portal application 605 isconfigured to navigate to a third party content provider selling theselected gaming application. The native/portal application is configuredfor facilitating installation of the newly purchased gaming applicationon the gaming console 600A. In particular, when the end user selects agame for purchase that is listed and recommended through the nativegaming resource application 605, the navigator 610 establishescommunication between the gaming console 600A and the back-end contentprovider through a communication network (e.g., internet) and/orinterface. The content provider includes a third party content provider,and/or a content provider that is associated with the gaming console600A.

The handheld gaming console 600A includes a communication networkinterface 620 configured to connect the console 600A to a network. Theinterface 620 is configured to provide wired, wireless, and/orpeer-to-peer communication, as previously described in relation tosystems 100 and 200. For instance, interface 200 provides acommunication link to a communication network (e.g., LAN, WAN, internet)so that the console 600A is able to communicate with a second device(e.g., a display receiver, a cable set-top box, a micro-console, an HDtelevision, an HD monitor, a second handheld gaming console 600A, etc.),in embodiments. In other embodiments, local communication is providedthrough a wired or peer-to-peer (e.g., Wi-Fi Direct) communicationnetwork.

The handheld gaming console 600A includes a video encoder/decoder 630.In that manner, the gaming console 600A is configurable to encode imagesinto a video stream that is delivered over a network or directconnection to a second computing device and/or display for display. Forinstance, the video encoder is configured to encode video using theH.264 protocol or format in one implementation, wherein other videocompression formats are also supported. Also, the gaming console 600A isconfigurable to receive encoded images in a video stream over a networkor direct connection from a second computing device, and decode thevideo stream to display images on a local display of the gaming console600A. As an example, the handheld computing console is configurable forestablishing a peer-to-peer communication with a second device (e.g., anHD monitor or TV), and transmitting the video stream to the seconddevice for display, over the communication channel.

FIG. 6B is a flow diagram 600B illustrating a method for providingsupport for a gaming application executable on a standalone, handheldgaming console, in accordance with one embodiment of the presentdisclosure. In still another embodiment, flow diagram 600B illustrates acomputer implemented method for providing support for a gamingapplication executable on a standalone, handheld gaming console. Inanother embodiment, flow diagram 600B is implemented within a computersystem including a processor and memory coupled to the processor andhaving stored therein instructions that, if executed by the computersystem causes the system to execute a method for providing support for agaming application executable on a standalone, handheld gaming console.In still another embodiment, instructions for performing a method asoutlined in flow diagram 600B are stored on a non-transitorycomputer-readable storage medium having computer-executable instructionsfor causing a computer system to perform a method for providing supportfor a gaming application executable on a standalone, handheld gamingconsole. The method outlined in flow diagram 600B is implementable byone or more components of the computer system 100 and client device 200of FIGS. 1 and 2, respectively, as well as handheld computing consolesdescribed throughout this Application (e.g., console 600A of FIG. 6A).

As shown in flow chart 600B, at 650, the method includes executing agaming application on a processor of a handheld gaming console and/orhandheld computing device. In one implementation, the handheld gamingconsole is a stand-alone device that is capable of executing a storedgaming application for end-user participation. For example, the handheldgaming console includes a housing configured for handheld manipulation.At 660, the method includes receiving an input originating from at leastone controlling device (e.g., button, joystick) located on the handheldconsole. The handheld gaming console includes at least one controllingdevice that is exposed on the housing and configured for receiving inputfrom the end user that provides an instruction for the gamingapplication. At 670, the method includes displaying video of the gamingapplication on an HD display of the handheld gaming console. As such,flow chart 600B provides for the implementation of a stand-alonehandheld gaming console for executing a gaming application.

FIG. 7 is a block diagram 700 of a handheld gaming console 720communicatively coupled with a client application (app) store 770 and athird party gaming source 720, according to embodiments of the presentinvention. The handheld gaming console 720 of FIG. 7 performs similarfunctionality as the handheld gaming console and/or computing device 410of FIGS. 4A and 4B. For example, the gaming console 720 may include adisplay 750 similar to the console display 450 of FIG. 4A.

The gaming console 720 may be communicatively coupled with the clientapp store 770 through a network 760. The network 760 may be similar tothe network 350 of FIG. 3 and may include local area network (LAN)and/or wide area network (WAN) portions, in embodiments. The client appstore 770 is affiliated with an entity supporting a gaming environmentand/or community accessible through the handheld gaming console 720,such as, TegraZone associated with Nvidia Corp. that manages a suite ofGoogle Android based gaming applications suitable for execution on thehandheld gaming console 720. For instance, the client app store 770 maybe operable to provide data in the form of software applications and/ormedia to the gaming console 720. For example, the app store 770 may beoperable to provide video games, other software applications, movies, TVshows, music, photos, and so on. In one, the app store 710 providesperiodic updates the front end portal, native gaming resourceapplication that is running on the handheld gaming console 740. Forexample, the native application includes a list 760 of supported andavailable applications that are customized for execution on the handheldgaming console 740. For instance, list 760 includes GAME X, GAME Y, GAMEZ, GAME AA, etc.

The gaming console 720 may locally store the software applications andmedia provided by the app store 770 and may be operable to execute suchcontent. For example, the gaming console 720 may run the softwareapplications or playback media content. The app store 770 may providethe data to the gaming console 720 for free, through a paidsubscription, and/or on a per unit purchase basis.

The gaming console 720 may be communicatively coupled with more than oneapp store. For example, the gaming console may connect with an app store771 in addition to the app store 770. The app store 771 may provide thesame or different content, pricing, package offerings, etc, than the appstore 770. The app stores may be, but are not limited to being, appstores like the one supported by NVIDIA to support the nativeapplication TegraZone running on the gaming console. For example, uponselection of one of the gaming applications for purchase (e.g., GAME X),the handheld gaming console facilitates communicative coupling betweenthe console 740 and a third party content provider 771 through a network730 for finalizing the purchase and delivery of GAME X. For example, anavigator module (e.g., navigator 610 of FIG. 6A is able to facilitatedelivery of GAME X from provider 720 to console 740, and install GAME Xon console 740. In that manner, client app store 770 acts as a brokerbrining the end users through the handheld gaming console 720 and thethird party app store 771.

Because the gaming console 720 may receive data from the app store 770through the network 760, the gaming console 720 may receive such data atany location while connected to the network 760. For example, if thegaming console 720 is connected to the internet through a home Wi-Firouter while inside a home or through a cellular data connection whileoutside of the home, the gaming console 720 may still receive data fromthe app store 770.

Further, because the gaming console 720 may locally store the data, thegaming console 720 may execute the data even while not connected withthe network 760. As a result, a user of the gaming console 720 mayreceive software applications and media while inside or outside thehome. Further, a user may interact with the software applications andmedia through the gaming console 720 while inside or outside the home.

A user may be linked with more than one gaming console. For example, auser may be linked with the gaming console 720 and a second gamingconsole 722. If a user downloads data on one gaming console, the secondgaming console may receive the same data. For example, if the userdownloads an app on the gaming console 720, the gaming console 752 mayalso receive the same app. The additional instances of the app on theadditional gaming consoles may be automatic. Further, the additionalinstances may either be free even when the first instance of the app waspaid for, or each additional instance may require additional payment.

TABLE 1 LISTING OF CLAIMS  1. A computing device, comprising: a housingconfigured for handheld manipulation; a processor contained within saidhousing and configured for executing a gaming application; memorycontained within said housing and configured for storing executables ofsaid gaming application; at least one control button exposed on saidhousing and configured for receiving input from a user that provides aninstruction for said gaming application; and a high definition (HD)display for displaying video from said gaming application.  2. Thecomputing device of Claim 1, wherein said HD display comprises a touchscreen display.  3. The computing device of Claim 1, further comprising:an Android ® operating system.  4. The computing device of Claim 1,further comprising: an active cooling system configured for cooling saidhandheld computing device.  5. The computing device of Claim 1, furthercomprising: an internal battery source.  6. The computing device ofClaim 1, further comprising: a communication interface configured toconnect said computing device to a network; a front-end portalapplication executable by said handheld computing device, wherein saidapplication is affiliated with an entity associated with said handheldcomputing device, wherein said application is configured to providenotification of games such as, said gaming application that aresupported by said handheld computing device, wherein upon receiving aselection by a user for purchasing said gaming application said portalapplication is configured to navigate to a third party content providerselling said gaming application, and facilitating installation of saidgaming application on said handheld device.  7. The computing device ofClaim 6, wherein said front-end portal application comprises a socialnetworking platform.  8. The computing device of Claim 6, wherein saidfront-end portal application periodically receives updates from a backend server associated with said entity.  9. The computing device ofClaim 1, further comprising: a video encoder for encoding video fromsaid gaming application into a video stream; and a peer-to-peercommunication interface configured to transmit said video stream to asecond device for display. 10. The computing device of Claim 9, whereinsaid video encoder encodes said video using an H.264 format. 11. Thecomputing device of Claim 9, wherein said second device is taken from agroup consisting essentially of: a display receiver; a cable set-topbox; a micro-console; an HD television; an HD monitor; and a secondcomputing device configured as said computing device of Claim 1. 12. Thecomputing device of Claim 9, wherein said communication interfacecomprises a wired interface or a wireless interface. 13. A method forcomputing, comprising: executing a gaming application on a handheldcomputing device; receiving an input originating from at least onecontrol button, wherein said input provides an instruction for saidgaming application; and displaying video of said gaming application on ahigh definition display of said handheld computing device. 14. Themethod of Claim 13, further comprising: executing a front-end portalapplication on said handheld computing device, wherein said applicationis affiliated with an entity associated with said handheld computingdevice, wherein said application is configured to provide notificationof games such as, said gaming application that are supported by saidhandheld computing device; receiving a selection by a user forpurchasing said gaming application; connecting said handheld computingdevice to network through a communication interface; navigating to athird party content provider selling said gaming application throughsaid network; and facilitating installation of said gaming applicationon said handheld device. 15. The method of Claim 13, further comprising:encoding video from said gaming application into a video stream; andestablishing a peer-to-peer communication with a second device;transmitting said video stream over said peer-to-peer communication tosaid second device for display. 16. The method of Claim 15, wherein saidvideo encoder encodes said video using an H.264 format. 17. The methodof Claim 15, wherein said second device is taken from a group consistingessentially of: a display receiver; a cable set-top box; amicro-console; an HD television; an HD monitor; a second handheldcomputing device configured to execute another version of said gamingapplication for purposes of multi-player gaming. 18. A non-transitorycomputer-readable medium having computer-executable instructions forcausing a computer system to perform a method comprising: executing agaming application on a handheld computing device; receiving an inputoriginating from at least one control button, wherein said inputprovides an instruction for said gaming application; and displayingvideo of said gaming application on a high definition display of saidhandheld computing device. 19. The computer-readable medium of Claim 18,wherein said method further comprises: encoding video from said gamingapplication into a video stream; and establishing a peer-to-peercommunication with a second device; transmitting said video stream oversaid peer-to-peer communication to said second device for display. 20.The computer-readable medium of Claim 18, wherein said method furthercomprises: executing a front-end portal application on said handheldcomputing device, wherein said application is affiliated with an entityassociated with said handheld computing device, wherein said applicationis configured to provide notification of games such as, said gamingapplication that are supported by said handheld computing device,receiving a selection by a user for purchasing said gaming application;connecting said handheld computing device to network through acommunication interface; navigating to a third party content providerselling said gaming application through said network; and facilitatinginstallation of said gaming application on said handheld device.

Gaming Console Environment

FIG. 8 is an illustration of a exemplary network environment 800 withinwhich a handheld gaming console and/or computing device 890 isconfigured for controlling the actions within a gaming application, inaccordance with one embodiment of the present disclosure. Although ageneral description is provided for the implementation of the handheldconsole 890 within the network environment 800, other variousimplementations are described more fully below in relation to FIGS.9-17, in other embodiments.

As shown in FIG. 8, a handheld held gaming console 890 includes a HDdisplay 895 for the display of various images, including video from alocally executing gaming application, video from a remotely executinggaming application, secondary or supplemental video of a gamingapplication related to a gaming application, etc. The gaming console 890is communicatively coupled to various secondary, local devices, such as,those within a short distance of each other, like in a home environment.For example, gaming console is communicatively coupled to one or more ofa PC 870, mobile device 875, and an HD TV/monitor 880.

In one embodiment, gaming console 890 is communicatively coupled to asecondary device through peer-to-peer communication, such as, Wi-FiDirect, that facilitates a connection between the gaming console 890 anda second device (e.g., micro-console, gaming console, set-top box, HDTV/monitor 880, etc.) without the use of a wireless access point. Theseconnections are shown as being formed below line A-A. For example,gaming console is communicatively coupled through a peer-to-peerwireless protocol (e.g., Wi-Fi Direct) to PC 870 along path 871. In thismanner, the PC is able to execute a gaming application using itspowerful CPU and graphics processing capabilities and display theassociated video on the display 895 of the gaming console 890 and/or aseparately connected HD TV/monitor 880 (e.g., connected through wired,or wireless communication). Also, in another implementation, the gamingconsole 890 is able to execute a gaming application and display theassociated video on the HD TV/monitor 880 connected directly eitherthrough a wired or wireless connection. In the case of a wirelessconnection, if the HD TV does not have a peer-to-peer interface, acommunication dongle 885 is used to couple the HD TV/monitor 880 to thegaming console 890 via a peer-to-peer connection. That is, dongle 885acts as a display receiver.

In another implementation, the gaming console is coupled to an accesspoint 860 above line A-A to facilitate communication with a network 850(e.g., WAN, LAN, and internet, etc.) to facilitate communication withlocal devices (e.g., PC 870, mobile device 875, HD TV/monitor 880), andto facilitate communication with remote web servers (e.g., GRID servers830, mobile based app store 840 and PC based app store 845. Forinstance, in one embodiment, a gaming application is running on avirtual computer of the GRID servers 830, and video of the gamingapplication is streamed to the display 895 of the gaming console 890 orto the HD TV/monitor 880 through network 850. In that case, the end userprovides instructions through controls on the gaming console 890 to thegaming application executed by the virtual computing device running onthe GRID servers 830.

As shown in FIG. 8, the gaming console 890 is coupled to one or more appstores through network 850. For instance, gaming console 890 is coupledto the mobile based app store 840. In one implementation, the app store840 is affiliated with an entity supporting a gaming environment and/orcommunity accessible through the handheld gaming console 890, such as,TegraZone associated with Nvidia Corp. that manages a suite of GoogleAndroid based gaming applications suitable for execution on the handheldgaming console 890. In another instance, gaming console is coupled tothe PC based app store 845. The app store 845 provides morecomputationally intensive gaming applications that are executable on PCbased computing devices, as opposed to less computationally powerfulmobile devices, such as, handheld gaming console 890. In that case,gaming applications may be purchased through the app store 845 using thegaming console 890 or PC 870 and downloaded and/or delivered to the PC870. These PC based games are executed on the PC 870 but controlledthrough the gaming console 890 and displayed either on the display 895of the gaming console 890 or on the HD TV/monitor 880, in variousembodiments, as will be further described below.

Methods and Systems for Interfacing a Handheld Gaming Console with anElectronic Display

FIG. 9A is a block diagram 900A of a handheld gaming console 720communicatively coupled with a display 950, according to embodiments ofthe present invention. The handheld gaming console 720 shown in FIG. 9Ais described in relation to FIG. 7A, and in one embodiment is the sameas or similar to the handheld gaming console 410 of FIGS. 4A and 4B. Forexample, the gaming console 620 may include a display 750 similar to theconsole display 450 of FIG. 4A.

The gaming console 720 may be communicatively coupled with the display950 through a network 965, for example, through wired or wirelessinterfaces. The network 965 may be similar to the network 350 of FIG. 3and may include local area network (LAN) and/or wide area network (WAN)options or portions. In another embodiment, the network 965 comprises apeer-to-peer communication network that provides direction communicationbetween the gaming console 720 and the display 950.

The display 950 may be any display, for example, a large display like aflat panel HDTV. The gaming console 720 may transmit images, video,audio, and other data to the display 950 through the network 965. Thedisplay 950 may then be able to display the video, playback the audio.Further, the display 950 may make use of the transmitted data. Forexample, the data may include instructions to the display 950 to changeto different audio or video modes.

In various embodiments, the gaming console 720 may execute a video gameusing components discussed above with reference to FIGS. 1, 2, 4, and 5,like a processor, graphics processing system, memory, and so on. Thegaming console 720 may send video and audio related to the video game tothe display 950, which in turn may display the content. As a result, thedisplay 950 may show the output of a video game played on the gamingconsole 920.

While the display 950 shows and plays the video game content, thedisplay 750 of the gaming console 720 may not display any content at allor any content related to the video game, in one embodiment.Alternatively, the display 650 shows content related to the video gamedifferent from what is shown by the display 950, in another embodiment.For example, the display 750 may show statistics related to game play,taunts from other players, hints related to game play, and so on. Inanother example, the display 950 shows video, such as a cockpit view ofa driving game, while the display 750 shows a rear view mirror view.

More than one gaming console may be communicatively coupled with thedisplay 950. As illustrated in FIG. 9A, a second gaming console 722 maybe coupled with the display 950 through the network 965. In oneembodiment, the second gaming console 722 establishes anotherpeer-to-peer connection with display 950. In one embodiment, one of thegaming consoles is a master console while the others are slave consoles.Accordingly, both gaming consoles may transmit audio, video, and/orother data to the display 950. For example, a first half of thedisplay's 950 screen shows video transmitted by gaming console 720 whilea second half of the display's 950 screen shows video transmitted bygaming console 722.

In another implementation, the second gaming console 722 is paired withthe first gaming console 720, such that a second video of the gamingapplication executing on the first gaming console 720 is displayable ondisplay 752 of the second gaming console 722, such as, a spectator view,or statistics, etc. In another case, the second gaming console 722 isexecuting the same gaming application, and as such the gamingapplication is executing on both consoles 720 and 722 for the benefit ofone player. The two gaming applications as executed are integrated, suchthat a first view of the gaming application is generated by the gamingapplication executed on the first gaming console 720 and displayed ondisplay 750 of the first gaming console 720. Further, a second view ofthe gaming application is generated by the gaming application executedon the second gaming console 722 and is displayed on display 752 of thesecond gaming console 722.

It should be appreciated that there may be more than one display coupledwith the gaming consoles. For example, a second display shows adifferent spectator view than a spectator view shown by a first display.Alternatively, each display shows a private view of each gaming console.It should be appreciated that embodiments discussed below with respectto the following figures may also include multiple displays in the sameway.

The gaming consoles may communicate with each other, for example,through the network 965 (e.g., access points, LAN, WAN, internet,peer-to-peer communication, etc.). However, the gaming consoles may becommunicatively coupled directly with one another, for example through awireless or wired interface. As a result, the gaming consoles maycooperate with one another to support multiplayer games. For example, agame being executed on the gaming console 720 may communicate withanother instance of the same game being executed on the gaming console722 to provide a multiplayer gaming experience.

In various embodiments, the gaming consoles 720 and 722 provides privateviews on their respective displays 750 and 752 while providing aspectator view on the display 755. The private views are shown only oneach respective display to help prevent other users or players of amultiplayer game being played on the consoles from seeing other players'views. In this way, a player's view will be private and prevent othersfrom anticipating future actions from the player, learn informationabout the player (e.g., health statistics, available weaponry, etc),learn about a location of the player (e.g., a location in the map orlevel), and so on. In addition, players will be less distracted by otherplayers' views, providing a more realistic gaming experience.

For example, the spectator view shown on the display 950 includes ageneral view of the game that the players of the game or others mayview. For illustration, in a football game, the spectator view may showangles similar to those shown when watching a televised football game,thereby providing a more realistic experience to viewers of the display950. Alternatively, the spectator view chooses to follow differentplayers of the game at random, either revealing their private view orother views (e.g., a bird's eye view of a player's character instead ofthe character's personal view). Or, the display 950 shows statisticsrelated to the game play. For example, player rankings, remaining gametime, and so on.

It should be appreciated that the gaming consoles may cooperate witheach other to provide a multiplayer gaming experience without thedisplay 950. For example, the gaming consoles 720 and 722 may provide aprivate view on their respective displays 750 and 752 so that players ofa game may benefit from the advantages discussed above. However, aspectator view may not be necessary or preferable. In fact, the gamingconsoles 720 and 722 may provide the multiplayer gaming experiencewithout the existence of an additional display like the display 950.

It should be borne in mind that the gaming consoles may executedifferent games. Further, it should be appreciated that the gamingconsoles may both transmit information to the display 950 even whileplaying different games. For example, a portion of the display 950 mayshow the game being played on the gaming console 720 and a portion ofthe display 950 may show the game being played on the gaming console722.

The video, audio, and/or other data transmitted from the gaming consolesto the display 950 may or may not be compressed before sending, anddecompressed and/or decoded when received by the display 755. Forexample, see copending U.S. patent application Ser. No. 13/727,357,“VIRTUALIZED GRAPHICS PROCESSING FOR REMOTE DISPLAY,” filed on Dec. 26,2012, with Attorney Docket No. NVID-P-SC-09-0210-US1, which isincorporated herein by reference for all purposes. For example, thegaming console 720 may compress the data into H.264 format fortransmittal to the display 950. Once the display 950 receives the datato be displayed, it may decompress and display the video, audio, and/orother data. It should be noted that in all embodiments of the invention,the file formats used are not limited to H.264 and that thecommunication protocols may be but are not limited to IEEE 802.11protocols, but for example, Bluetooth.

It should be noted that a communication interface component 920, asdiscussed with respect to FIG. 9B below, may be coupled with the display950. As a result, even though the gaming consoles 720 and 722 maycommunicate with the display 950 through the network 965, the display950 may be coupled with the network 965 through the communicationinterface component 920 (e.g., through a peer-to-peer interface). Inother words, the communication interface component 920 may be operableto allow the display 950 to communicate through the network 965. Forexample, the communication interface component 920 includes a donglethat enables peer-to-peer communication for display 950. In otherembodiments, the communication interface component 920 is integratedwithin display 950.

FIG. 9B is a block diagram 900B of a handheld gaming console 720communicatively coupled with a display 950, according to embodiments ofthe present invention. FIG. 9B includes a communication interfacecomponent 920 that is operable to allow the gaming console 720 tocommunicate with the display 755 without a network.

The communication interface component 920 may be, for example, a cableset-top box operable to provide video and audio from the handheld gamingconsole 920 to the display 950. The communication interface component920 may be, for example, a dongle with an HDMI port that is operable toconnect with the display's 950 HDMI port. It should be appreciated thatthe interface component 920 may support other interfaces that areoperable to provide video, audio, and/or data. For example, a DVIconnection. The interface component 920 may also be operable towirelessly communicate with the gaming console 720. As a result, thegaming console may transmit video, audio, and/or data to the interfacecomponent 920, which in turn may provide such information to the display950, such as, through a peer-to-peer wireless connection. Ultimately,the video, audio, and/or other data sent by the gaming console 720 maybe displayed or played by the display 950 similarly to the embodimentsdiscussed with respect to FIG. 9A.

It should be appreciated that multiple gaming consoles may transmit datato the interface component 920, in other words, the interface component920 may be operable to communicate with more than one gaming console. Asa result, various embodiments involving more than one gaming console,like those discussed with respect to FIG. 9A, are possible with the useof the interface component 920 and without a network. It should also benoted that multiple gaming consoles may communicate with one anotherthrough the interface component 920.

More particularly, FIG. 10A is a block diagram of a handheld gamingconsole 1000A, in accordance with one embodiment of the presentdisclosure. The handheld gaming console 1000A provides additionalfunctionality to the computer system 100 and/or client device 1000, andincludes similar components as gaming console 600A of FIG. 6A. Forinstance, the handheld gaming console 1000A includes a housingconfigured for handheld manipulation, and a CPU and/or GPU processorcontained within the housing configured for executing, at least, agaming application, and memory for storing executables of the gamingapplication. In one embodiment, the handheld gaming console 1000A is runon an Android® operating system. The handheld gaming console 1000Aincludes at least one control button that is exposed on the housing andconfigured for receiving input from an end user that provides aninstruction for the gaming application. An HD display is included fordisplaying video and/or images of the gaming application.

As shown, the handheld gaming console 1000A includes a native gamingresource application 605 that is installed on the device. The nativeapplication 605 comprises a front-end portal application executable bythe console 1000A, wherein the portal application 605 is affiliated withan entity that provides and promotes a gaming experience using thegaming console 1000A, as previously described.

The handheld gaming console 600A includes a navigator 610 that isconfigured to provide a direction connection to a third party contentprovider. For instance, upon receiving a selection by an end user forpurchasing a gaming application, the native/portal application 605 isconfigured to navigate to a third party content provider selling theselected gaming application, and for facilitating installation of thenewly purchased gaming application on the gaming console 1000A.

The handheld gaming console 1000A includes a communication networkinterface 620 configured to connect the console 1000A to a network. Theinterface 620 is configured to provide wired, wireless, and/orpeer-to-peer communication, as previously described in relation tosystems 100 and 200. For instance, interface 200 provides acommunication link to a communication network (e.g., LAN, WAN, internet)so that the console 1000A is able to communicate with a second device(e.g., a display receiver, a cable set-top box, a micro-console, an HDtelevision, an HD monitor, a second handheld gaming console 600A, etc.),in embodiments

The handheld gaming console 600A includes a video encoder/decoder 630.In that manner, the gaming console 600A is configurable to encode imagesinto a video stream that is delivered over a network or directconnection to a second computing device and/or display for display(e.g., using the H.264 format), and to receive and decode an encodedvideo stream for local display.

Also, the gaming console 1000A is configurable to receive encoded imagesin a video stream over a network or direct connection from a secondcomputing device, and decode the video stream to display images on alocal display of the gaming console 600A.

Gaming console 1000A, also includes a peer-to-peer communicationtransmitter/receiver 1040. As such, direct communication between localdevices is provided through a peer-to-peer (e.g., Wi-Fi Direct)communication network. As an example, the handheld computing console1000A is configurable for establishing a peer-to-peer communication witha second device (e.g., an HD monitor or TV), and transmitting the videostream to the second device for display, over the communication channel.

In one embodiment, the gaming console 1000A is configured to execute afront-end portal application. The application is affiliated with anentity associated with the handheld gaming console in order to providean overall gaming experience. For instance, the native applicationprovides notification of games that are supported by the gaming console,and where upon receiving a selection by an end user for purchasing agaming application, the native, portal application is configured tonavigate to a third party content provider (e.g., web site) tofacilitate the purchase gaming application, receive rights to the gamingapplication, and/or installation of the gaming application on thehandheld gaming console.

FIG. 10B is a flow diagram 1000B illustrating a method for providingsupport for a gaming application executable on a handheld gaming consoleand a display on a second device, in accordance with one embodiment ofthe present disclosure. In still another embodiment, flow diagram 1000Billustrates a computer implemented method for providing support for agaming application executable on a handheld gaming console and a displayon a second device. In another embodiment, flow diagram 1000B isimplemented within a computer system including a processor and memorycoupled to the processor and having stored therein instructions that, ifexecuted by the computer system causes the system to execute a methodfor providing support for a gaming application executable on a handheldgaming console and a display on a second device. In still anotherembodiment, instructions for performing a method as outlined in flowdiagram 1000B are stored on a non-transitory computer-readable storagemedium having computer-executable instructions for causing a computersystem to perform a method for providing support for a gamingapplication executable on a handheld gaming console and a display on asecond device. The method outlined in flow diagram 1000B isimplementable by one or more components of the computer system 100 andclient device 200 of FIGS. 1 and 2, respectively, as well as handheldcomputing consoles described throughout this Application (e.g., console1000A of FIG. 10A).

As shown in flow chart 1000B, at 1050, the method includes executing agaming application on a processor of a handheld gaming console and/orhandheld computing device. In one implementation, the handheld gamingconsole is a stand-alone device that is capable of executing a storedgaming application for end-user participation. For example, the handheldgaming console includes a housing configured for handheld manipulation,a processor (e.g., CPU and GPU configurations) configured for executingthe gaming application, memory for storing executables of the gamingapplication, and at least one controlling device exposed on the housingthat is configured for receiving input from an end user, wherein theinput provides an instruction that is handled by the gaming application.

At 1060, the method includes generating video of the executed gamingapplication. That is, as the gaming application is executed and playedby an end user, corresponding video is generated for display. In oneembodiment, one or more video streams are generated. For instance, afirst video includes a player's view, wherein a second video includes aspectator view. Other views are also capable of being generated, suchas, informational views (e.g., heads up display showing statisticalinformation, a second player's view, etc.).

At 1070, the method includes streaming the video to a second device fordisplaying the video. That is, instead of displaying the video on thegaming console that is executing the gaming application, the video istransmitted to a second device for display. For instance, the seconddisplay may be an HD TV/monitor that can show the video on a largerscreen for the increased enjoyment of the end user playing the game. Inother implementations, the second device includes a display receiver(e.g., dongle), a cable set-top box allowing the video to be displayedthrough a cable channel, a micro-console, an HD TV/monitor, or a secondhandheld gaming console. In one embodiment, the video that is streamedis uncompressed, and delivered over a wired connection (e.g., HDMI), ora wireless connection.

In another embodiment, the video is compressed. That is, at 1080, thevideo is optionally encoded. For instance, the video is encoded usingthe H.264 compression protocol, as previously described. The encodedvideo is then transmitted over a wired or wireless connection (e.g.,through an access point, LAN, WAN, etc.) to the second device fordisplay. In one embodiment, at 1090, the method optionally establishes apeer-to-peer connection between the handheld gaming console and thesecond device. As such, the encoded video is streamed to the seconddevice over the peer-to-peer connection, wherein the second devicedecodes the encoded video and displays the decoded video.

In one embodiment, a dongle is communicatively coupled to the seconddevice. The dongle is configured for peer-to-peer communication, and assuch, is able to provide an interface allowing for peer-to-peercommunication for the second device. In particular, the method includesestablishing a peer-to-peer connection between the handheld gamingconsole and the dongle. In that manner, the encoded video is deliveredto the dongle and decoded for delivery to the second device for display.

In one embodiment, two different views are generated. For instance, theencoded video comprises a first view of the gaming application, and isstreamed to the second device for display. As an illustration, the firstview includes a player's view of the gaming application. A second viewis also generated by the gaming application. For instance, the secondview includes statistical information (e.g., included in a heads updisplay, also referred to as a HUD), or map, or other types ofinformation beneficial to the player. The second video (e.g., of thesecond view) is displayed on the gaming console, in one embodiment.

In one embodiment, the method includes receiving an input originatingfrom a controlling device on the gaming console. The input provides aninstruction that is handled by the gaming application. As such, theinput is generated through interaction with the gaming console, andcorresponding video is generated by the gaming application. Thecorresponding video is then transmitted to a second device for display,either through a wired or wireless connection.

In one embodiment, the method includes executing a front end applicationon the handheld gaming console, wherein the native application isassociated with and supports the gaming experience surrounding thegaming console. For instance, the native application is configured toprovide notification of games that are supported by the correspondinghandheld gaming console. In one embodiment, a selection of a game isreceived for purchase. A connection is made between the handheld gamingconsole to a third party content provider through a communicationnetwork. The third party is capable of selling the gaming applicationthrough the network. Installation of the gaming application isfacilitated by the native application onto the gaming console, so thatthe gaming application is executable on the gaming console.

That is, the native application includes multiple features to enhancethe end user's gaming environment and experience with the console 600A,and acts as a dashboard for facilitating these features. For instance,the native application provides an interface to a social network that issupported by a web client content provider. In addition, the nativeapplication 605 is periodically updated through a connection to theclient provider. In another implementation, the native applicationincludes a list of recommended games produced and customized forexecution on the handheld device 600A. For example, the portalapplication 605 is configured to provide notification of games such as,gaming applications that are supported by and customized for executionby the gaming console 600A. The native application 605 also includes alist of games installed, associated with, and/or accessible by thegaming console 600A, and includes a link to begin execution of aselected game.

TABLE 2 LISTING OF CLAIMS  1. A method for computing, comprising:executing a gaming application on a handheld computing device, whereinsaid handheld computing device comprises: a housing configured forhandheld manipulation; a processor contained within said housing andconfigured for executing said gaming application; memory containedwithin said housing and configured for storing executables of saidgaming application; and at least one controlling device exposed on saidhousing and configured for receiving input from an end user thatprovides an instruction handled by said gaming application; generatingvideo of said executed gaming application; and streaming said video to asecond device for displaying said video.  2. The method of Claim 1,further comprising: encoding said video; and streaming said encodedvideo to said second device for displaying said video stream.  3. Themethod of Claim 2, wherein said streaming said encoded video furthercomprises: establishing a peer-to-peer connection between said handheldcomputing device and said second device.  4. The method of Claim 2,wherein said streaming said encoded video further comprises:establishing a peer-to-peer connection between said handheld computingdevice and a dongle, wherein said dongle is communicatively coupled tosaid second device and comprises a peer-to-peer interface between saidsecond device and said handheld computing device; and streaming saidencoded video to said dongle.  5. The method of Claim 3, wherein saidstreaming said encoded video further comprises: streaming said encodedvideo, wherein said encoded video comprises a first view of said gamingapplication; generating a second video for said gaming application,wherein said second video comprises a second view of said gamingapplication; and displaying said second video on an HD display of saidgaming console.  6. The method of Claim 5, wherein said video isstreamed using an HDMI protocol.  7. The method of Claim 1, wherein saidsecond device is taken from a group consisting essentially of: a displayreceiver; a cable set-top box; a micro-console; an HD television; an HDmonitor; and a second computing device configured as said computingdevice of Claim 1.  8. The method of Claim 2, wherein said encoding saidvideo comprises: encoding said video using an H.264 format.  9. Themethod of Claim 1, further comprising: receiving an input originatingfrom a controlling device, wherein said input provides an instructionhandled by said gaming application. 10. The method of Claim 1, furthercomprising: executing a front-end portal application on said handheldgaming console, wherein said application is affiliated with an entityassociated with said handheld gaming console, wherein said applicationis configured to provide notification of games such as, said gamingapplication that are supported by said handheld gaming console;receiving a selection by a user for purchasing said gaming application;connecting said handheld computing device to network through acommunication interface; navigating to a third party content providerselling said gaming application through said network; and facilitatinginstallation of said gaming application on said handheld gaming console.11. A computing device, comprising: a housing configured for handheldmanipulation; a processor contained within said housing and configuredfor executing said gaming application; memory contained within saidhousing and configured for storing executables of said gamingapplication; at least one controlling device exposed on said housing andconfigured for receiving input from an end user that provides aninstruction handled by said gaming application; a video encoder forencoding video from said gaming application; and a peer-to-peercommunication interface configured to transmit said encoded video to asecond device for display. 12. The computing device of Claim 11, furthercomprising: an Android ® operating system. 13. The computing device ofClaim 11, further comprising: a communication interface configured tocouple said computing device to a network; a front-end portalapplication executable by said handheld computing device, wherein saidapplication is affiliated with an entity associated with said handheldcomputing device, wherein said application is configured to providenotification of games such as, said gaming application that aresupported by said handheld computing device, wherein upon receiving aselection by a user for purchasing said gaming application said portalapplication is configured to navigate to a third party content providerselling said gaming application, and facilitating installation of saidgaming application on said handheld device. 14. The computing device ofClaim 11, wherein said peer-to-peer communication interface isconfigured to establishing a peer-to-peer connection between saidhandheld gaming console and a dongle, wherein said dongle iscommunicatively coupled to said second device and comprises apeer-to-peer interface between said second device and said handheldgaming console, wherein said encoded video is streamed to said dongleover said peer-to-peer connection. 15. The computing device of Claim 11,wherein said video encoder encodes said video using an H.264 format. 16.The computing device of Claim 11, wherein said second device is takenfrom a group consisting essentially of: a display receiver; a cableset-top box; a micro-console; an HD television; and an HD monitor; asecond computing device configured as said computing device of Claim 1.17. A non-transitory computer readable medium having computer executableinstructions for causing a computer system to perform a method forcomputing, wherein said method comprises: executing a gaming applicationon a handheld gaming console, wherein said handheld gaming consolecomprises: a housing configured for handheld manipulation; a processorcontained within said housing and configured for executing said gamingapplication; memory contained within said housing and configured forstoring executables of said gaming application; and at least onecontrolling device exposed on said housing and configured for receivinginput from an end user that provides an instruction handled by saidgaming application; generating video of said executed gamingapplication; and streaming said video to a second device for displayingsaid video. 18. The computer readable medium of Claim 17, wherein saidmethod further comprises: encoding said video; and streaming saidencoded video to said second device for displaying said video stream.19. The computer readable medium of Claim 17, wherein said streamingsaid encoded video in said method further comprises: establishing apeer-to-peer connection between said handheld gaming console and saidsecond device. 20. The computer readable medium of Claim 17, whereinsaid method further comprises: executing a front-end portal applicationon said handheld gaming console, wherein said application is affiliatedwith an entity associated with said handheld gaming console, whereinsaid application is configured to provide notification of games such as,said gaming application that are supported by said handheld gamingconsole; receiving a selection by a user for purchasing said gamingapplication; connecting said handheld computing device to networkthrough a communication interface; navigating to a third party contentprovider selling said gaming application through said network; andfacilitating installation of said gaming application on said handheldgaming console.Methods and Systems for Interfacing a Remote Server with a HandheldGaming Console

FIG. 11A is a block diagram 1100A of a handheld gaming console 720communicatively coupled with a locally-based server 1185 or cloud basedserver 1180, according to embodiments of the present invention. Thehandheld gaming console 720 of FIG. 11A is described in relation to FIG.7A, and in one embodiment is the same as or similar to the handheldgaming console 410 of FIGS. 4A and 4B. For example, the gaming console720 may include a display 750 similar to the console display 450 of FIG.4A.

In one embodiment, the gaming console 720 may be communicatively coupledwith the locally-based server 1185 through a network 1165, for example,through wired or wireless interfaces. The network 1165 may be similar tothe network 350 of FIG. 3 and may be, for example, a local area network(LAN), or a wide area network (WAN) for purposes of facilitatingcommunication over the internet.

The locally-based server 1185 may be a computer system that is locatedproximately to the gaming console 720. For example, the locally-basedserver 1185 may be located in the same house or building as the gamingconsole 720, or connected with the gaming console 720 primarily througha LAN (e.g., through a wireless access point, otherwise referred to as a“WAP”). In other words, the locally-based server 1185 could be ahousehold personal desktop computer.

The locally-based server 1185 may be communicatively coupled with an appstore 1175 through a network 1160. The network 660 may be similar to thenetwork 350 of FIG. 3 and may include LAN and/or WAN portions. The appstore 1175 may be operable to provide data in the form of softwareapplications and/or media to the gaming console 720 that are suitablefor execution by the handheld gaming console 720. For example, the appstore 1175 may be operable to provide video games, other softwareapplications, movies, TV shows, music, photos, and so on.

In some cases, at least some of the content provided by the app store1175 may not be executable by the gaming console 720. For example, theapp store 1175 may provide content that requires certain platforms oroperating systems for execution that the gaming console 720 does not orcannot support. Alternatively, the app store 1175 content may not beexecutable by the gaming console 720 because the content requiresgreater processing power than the gaming console 720 may be able toprovide. Or, the app store 1175 content may not be executable by thegaming console 720 because the app store 1175 is not compatible with thegaming console 720 for various reasons, e.g., there is no container orapplication to allow communication between the gaming console 720 andthe app store 1175.

Importantly, the locally-based server 1185 may be operable to executethe content provided by the app store 1175. For example, thelocally-based server 1185 may provide a compatible platform or operatingsystem, may provide the necessary processing power, or may be able tocommunicate with the app store 1175 to execute the app store 1175content. Accordingly, the content may be downloaded from the app store1175, installed on the locally-based server 1185, and executed on thelocally-based server 1185. For example, the locally-based server 1185may download, install, and execute a game provided by the app store1175.

Further, the gaming console 720 may receive data from the locally-basedserver 1185 related to or representing the app store 1175 content. Forexample, the locally-based server 1185 may send video, audio, and/orother data related to the app store 1175 content through the network1165 to the gaming console 720. The other data may include, for example,instructions to activate a force feedback vibration component in thegaming console 720.

In one example, the locally-based server 1185 may execute a softwareapplication requiring graphics and audio processing. The locally-basedserver 1185 may then transmit the graphics and audio to the gamingconsole 720 for display and playback. Accordingly, the gaming console720 may provide the app store 1175 content with the aid of thelocally-based server 1185 that the gaming console may not have otherwisebeen able to provide. Even if the gaming console 720 may have been ableto provide the same app store 1175 content, it may be able to do so at alower quality or with limitations, but the locally-based server 1185 maybe capable of providing higher quality and limitation-free contentgeneration to the gaming console 720.

The video, audio, and/or other data transmitted from the locally-basedserver 1185 may or may not be compressed before sending, anddecompressed and/or decoded when received by the gaming console 720. Forexample, see copending U.S. patent application Ser. No. 13/727,357,“VIRTUALIZED GRAPHICS PROCESSING FOR REMOTE DISPLAY,” filed on Dec. 26,2012, with Attorney Docket No. NVID-P-SC-09-0210-US1, previouslyreferenced. For example, the locally-based server 1185 may compress thedata into H.264 format for transmittal to the gaming console 720. Oncethe gaming console 720 receives the data to be displayed, it maydecompress and display the video, audio, and/or other data.

The gaming console 720 may be operable to send user inputs to thelocally-based server 1185. For example, the gaming console 720 may senddata representing user interaction with the physical controls,touchscreen, internal/external motion tracking components, and so on, tothe locally-based server 1185. In this way, a user may control softwareapplications or content that is being executed on the locally-basedserver 1185. The gaming console 720 may send user inputs through thenetwork 1165.

It should be appreciated that embodiments of the present invention maynot require an app store. For example, an application may be locallyinstalled on the locally-based server 1185, for example, through DVDmedia. The locally-based server 1185 may still provide generated videoand audio related to the application to the gaming console 720.Alternatively, the locally-based server 1185 may playback media thatrequires stronger processing than the gaming console 720 is able toprovide. For example, the locally-based server 1185 may decode ahigh-resolution movie that is unable to be processed by the gamingconsole 720 by itself, and then send video and audio related to themovie to the gaming console 720 for display.

The various embodiments discussed with respect to other figures may beused with the locally-based server 1185. For example, there may be morethan one gaming console, e.g., FIG. 11A also includes the second gamingconsole 722.

The locally-based server 1185 may provide content to the second gamingconsole 722 simultaneously with gaming console 720. The content providedto multiple gaming consoles may be related or unrelated to each other.For example, the locally-based server 1185 may provide a movie to thegaming console 720 and provide video and graphics for a video game tothe second gaming console 722. Alternatively, the locally-based server1185 may provide related content to more than one gaming console. Forexample, the locally-based server 1185 may provide different video andaudio to the gaming consoles 720 and 722 for different characters withina multiplayer video game environment.

FIG. 11A includes the display 1155 that may be coupled with thelocally-based server 1185 and multiple gaming consoles 720 and 722through the network 1165 or directly through a communication interfacecomponent. The gaming consoles 720 and 722 may continue to display videoand playback audio sent by the locally-based server 1185, while thedisplay 1155 displays a spectator view sent by the locally-based server1185. Alternatively, the gaming consoles 720 and 722 may act ascontrollers while the display 1155 displays the main content, optionallywith the gaming consoles 720 and 722 game-related information likestatistics sent by the locally-based server 1185. The locally-basedserver 1185 may communicate with the display through the network 1165 ordirectly through a communication interface component.

In addition, gaming console 720 may be communicatively coupled with acloud based server 1180 through network 1160 and/or network 1165, forexample, through wired or wireless interfaces. For example, network 1160and/or network 1165 forms a LAN in part, and a WAN in parts to enablecommunication between the gaming console 720 and the cloud based server1180. In still other embodiments, the network connectivity includes acellular network. For example, the communication interface (e.g.,wireless modem) implemented on the gaming console 720 and servers 1180and 1185 supports wireless 3G and/or wireless long term evolution LTE(4G) communication. As a result, when the handheld gaming console 720 iswithin the range of a wireless network, it is configurable to connect tothe wireless network or the cellular network. When the handheld gamingconsole 410 is outside the range of a wireless network, it isconfigurable to connect to the cellular network to continue receivingnetwork access.

The cloud-based server 1180 may be part of a cloud-based computingsystem. Cloud computing is the use of computing resources (hardware andsoftware) that are delivered as a service over a network (typically theinternet). Therefore, the cloud-based server 1180 may be remotelylocated from the gaming console 720. For example, the cloud-based server1180 may be located in a separate building or city as the gaming console720.

In one embodiment, the cloud-based server 1180 provides virtual machinesconfigurable for executing gaming applications. For example, thecloud-based server 1180 is configured to provide virtual and/or physicalGPU-based processing for purposes of image rendering and otherexecutables. In one implementation, a virtual machine is configurable torender video for a corresponding gaming application, and is configurablefor executing the gaming application.

The cloud-based server 1180 may include or be communicatively coupledwith the app store 1175, previously described. As such, the app store1175 is operable to provide data in the form of software applicationsand/or media to the gaming console 720 and/or a virtual machine of thecloud-based server 1180, as previously described. For example, the appstore 1175 may be operable to provide video games, other softwareapplications, movies, TV shows, music, photos, etc. Importantly, thecloud-based server 1180 is operable to execute the content provided bythe app store 1175. For example, the cloud-based server 1180 may providea compatible platform or operating system, may provide the necessaryprocessing power, or may be able to communicate with the app store 1175to execute the app store 1175 content. Accordingly, the content may bedownloaded from the app store 1175, installed on the cloud-based server1180, and executed on the cloud-based server 1180. For example, thecloud-based server 980 may download, install, and execute a gameprovided by the app store 1175.

Operation of the cloud-based server 1180 is similar to the operation ofthe locally based server 1185, as previously described. For instance,the cloud based server 1180 executes a gaming application requiringgraphics and audio processing, and transmits the graphics and audio tothe gaming console 720 for display and playback. In one implementation,the cloud based server 1180 comprises a virtual machine. Because of thehigher processing power provided, the cloud-based server 1180 provideshigher quality of video and audio data back to the gaming console 720.Further, user inputs are generated at the gaming console 720 is receivedat the cloud based server 1180 for processing and handling by the gamingapplication. In addition, the cloud based server 1180 is configurable toprovide content simultaneously to the second gaming console 722 withgaming console 720.

Because the cloud-based server 980 is remotely communicatively coupledwith the gaming console 720, the gaming console 720 is able to receivedata from the cloud-based server 1180 at different locations. Forexample, the gaming console 720 may be able to receive data from thecloud-based server 1180 at different homes, outdoors, or even whilelocated in different countries. Accordingly, a user of the gamingconsole 720 is free to travel between different locations and continueto benefit from the continuous services of the cloud-based server 1180when executing a particular application, such as, a gaming application.

The cloud-based server 1180 provides content to the gaming console 720through a subscription-based model, in one embodiment. For example, auser of the gaming console 720 pays a monthly fee to be able to receiveservices and/or content from the cloud-based server 1180, like processedvideo and audio related to game play of a video game. Alternatively, thecloud-based server 1180 provides content to the gaming console 720through a pay-per-use model. Regardless of the type of payment modelused, piracy may be prevented or minimized since the softwareapplication will be withheld from the gaming console 720, and insteadonly video, audio, and/or other data is simply sent to the gamingconsole 720.

FIG. 11B is a block diagram 1100B of the handheld gaming console 720communicatively coupled with the cloud-based server 1110 that is in turncommunicatively coupled with a set-top box 1115, according toembodiments of the present invention. The handheld gaming console 720 ofFIG. 11B may be the same as or similar to the handheld gaming console410 of FIGS. 4A and 4B. For example, the gaming console 720 may includea display 750 similar to the console display 450 of FIG. 4A.

Similar to FIG. 11A, the gaming console 720 may be communicativelycoupled with the cloud-based server 1110 through a network, for example,through the network 1135. As discussed with respect to FIG. 11A, thecloud-based server 1110 may be part of a cloud-based computing systemthat provides a plurality of virtual computing devices based upondemand, wherein in one implementation, one or more the virtual computingdevices are configured for GPU processing. Therefore, the cloud-basedserver 1110 may be remotely located from the gaming console 720.

The cloud-based server 1110 may include or be communicatively coupledwith an app store 1175, which may be similar to the app store 1175 ofFIG. 11A, and other app stores described herein. The app store 1175 maybe operable to provide data in the form of software applications and/ormedia to the gaming console 720. For example, the app store 1175 may beoperable to provide video games, other software applications, movies, TVshows, music, photos, and so on.

As previously discussed, in some cases, at least some of the contentprovided by the app store 1175 may not be optimally executable orexecutable at all by the gaming console 720. Importantly, thecloud-based server 1110 may be operable to execute the content providedby the app store 1175.

FIG. 11B also includes a set-top box (STB) 1115 communicatively coupledwith the cloud-based server 1110. The STB 1115 may be a device that maycontain a tuner and connects to a television set and an external sourceof signal, turning the source signal into content in a form that canthen be displayed on the television screen or other display device. Forexample, the STB 1115 may be used to provide content from cable orsatellite television sources to a television. For example, the STB 1115may be located inside a house or a hotel room and connected to atelevision, e.g., the display 1145.

The STB 1115 may receive data from the cloud-based server 1110 relatedto or representing the app store 1175 content. For example, thecloud-based server 1110 may send video, audio, and/or other data relatedto the app store 1175 content through cable or satellite distributionpaths to the STB 1115. In another example, the cloud-based server 1110may send video, audio, and/or other data related to the app store 1175content through the network 1135 to the STB 1115 when the STB 1115 iscoupled with the network 1135.

The cloud-based server 1110 may send video and audio to the STB 1115through a specific channel that the STB 1115 may be operable to tuneinto. For example, when the STB 1115 tunes into channel X, channel X mayprovide the video and audio representing the content processed by thecloud-based server 1110. The STB 1115 may send the content to thedisplay 1145 for display.

In one example, the cloud-based server 1110 may execute a softwareapplication requiring graphics and audio processing. The cloud-basedserver 1110 may then transmit the graphics and audio to the STB 1115through a certain channel for display and playback ultimately on thedisplay 1145. Accordingly, the STB 1115 may provide the app store 1175content with the aid of the cloud-based server 1110 that the gamingconsole 720 may not have otherwise been able to provide. Even if thegaming console 720 may have been able to provide the same app store 1175content, it may be able to do so at a lower quality or with limitations,but the cloud-based server 1110 may be capable of providing higherquality and limitation free content generation.

The gaming console 720 may be operable to send user inputs to thecloud-based server 1110. For example, the gaming console 720 may senddata representing user interaction with the physical controls,touchscreen, internal/external motion tracking components, and so on, tothe cloud-based server 1110. In this way, a user may control softwareapplications or content that is being executed on the cloud-based server1110. The gaming console 620 may send user inputs through the network1135. As a result, the video and audio representing the content may bedisplayed through the STB 1115 but controlled through the gaming console720.

It should be appreciated that embodiments of the present invention maynot require an app store. For example, an application may be alreadyinstalled on the cloud-based server 1110. The cloud-based server 1110may still provide generated video and audio related to the applicationto the STB 1115. Alternatively, the cloud-based server 1110 may playbackmedia that requires stronger processing than the gaming console 720 isable to provide. For example, the cloud-based server 110 may decode ahigh-resolution movie that is unable to be processed by the gamingconsole 720 by itself, and then send video and audio related to themovie to the STB 1115 for display.

The various embodiments discussed with respect to other figures may beused with the cloud-based server 1110 and STB 1115. For example, theremay be more than one gaming console, e.g., FIG. 11B also includes thesecond gaming console 722.

The cloud-based server 1110 may provide content to the second gamingconsole 722 simultaneously with gaming console 720. The content providedto multiple gaming consoles may be related or unrelated to each other.For example, the cloud-based server 1110 may provide a movie to the STB1115 and provide video and graphics for a video game to the gamingconsoles 720 and 722. Alternatively, the cloud-based server 1110 mayprovide related content to more than one gaming console. For example,the cloud-based server 1110 may provide private or statistics views tothe gaming consoles 720 and 722 and a spectator view to the STB 1115.

FIG. 11B includes a communication interface component 1125 coupled withthe cloud-based server 1110 and a display 1140. The display 1140 may besimilar to the display 1145. The communication interface component 1125is coupled with the cloud-based server 1110 through the network 1135.For example, the communication interface component 1125 may be a donglewith an HDMI port that is operable to connect with the display's 1140HDMI port. In another embodiment, the communication interface component1125 is a dongle providing peer-to-peer capabilities and interfacing forthe display 1140. The communication interface component 1125 may notprocess the software application or content, but may instead be operableto provide the video and audio processed by the cloud-based server 1110to the display 1140. In other words, while the communication interfacecomponent 1125 may not be a traditional STB, it may provide similarfunctionality as the STB 1115 for channeling content processed and sentfrom the cloud-based server 1110.

FIG. 12A is a flow diagram 1200A illustrating a method for providingsupport for a gaming application executable on a remote processingdevice and displaying video on a handheld gaming console, in accordancewith one embodiment of the present disclosure. In still anotherembodiment, flow diagram 1200A illustrates a computer implemented methodfor providing support for providing support for a gaming applicationexecutable on a remote processing device and displaying video on ahandheld gaming console. In another embodiment, flow diagram 1200A isimplemented within a computer system including a processor and memorycoupled to the processor and having stored therein instructions that, ifexecuted by the computer system causes the system to execute a methodfor providing support for a gaming application executable on a remoteprocessing device and displaying video on a handheld gaming console. Instill another embodiment, instructions for performing a method asoutlined in flow diagram 1200A are stored on a non-transitorycomputer-readable storage medium having computer-executable instructionsfor causing a computer system to perform a method for providing supportfor a gaming application executable on a remote processing device anddisplaying video on a handheld gaming console. The method outlined inflow diagram 1200A is implementable by one or more components of thecomputer system 100 and client device 200 of FIGS. 1 and 2,respectively, as well as handheld computing consoles describedthroughout this Application (e.g., console 600A of FIG. 6A).

At 1205, the method includes receiving at a handheld gaming consoleencoded video from a remote computing device over a communicationnetwork. The remote device is configured for executing a gamingapplication, wherein video is generated from the executed gamingapplication based on input provided by the handheld gaming console. Thevideo is encoded into encoded video. In one embodiment, the handheldgaming console includes a housing configured for handheld manipulationand at least one controlling device exposed on the housing. Also, thehandheld gaming console also includes an HD display for displayingimages.

In one embodiment, the encoded video is transmitted over a wired orwireless network that couples the remote device and the handheld gamingconsole. That is, the handheld gaming console includes a receiver forreceiving the encoded video. For instance, in one embodiment, thecommunication network includes a wireless access point enablingconnection to the communication network. In one implementation, thecommunication network comprises a LAN, and the remote device is a localcomputing device (e.g., a home computer is coupled to a handheld gamingconsole operated at home). In another implementation the communicationnetwork comprises a WAN, possibly in combination with a LAN, and theremote device is a virtual machine supported by a cloud based virtualcomputing service. The cloud based service provides one or more highpowered virtual machines suitable for processing graphics.

At 1210, the method includes decoding the encoded video. Specifically,the encoded video received at the handheld gaming console isuncompressed or decoded. For example, in one implementation the encodedvideo is decoded using an H.264 protocol. At 1215, the method includesdisplaying the decoded video on the display of the handheld gamingconsole. In that manner, the gaming application is executed on a remoteserver (e.g., locally based server, or a cloud based server) that hasmore processing power, yet displayed on a display of the handheld gamingconsole. As such, the gaming application can be more complex thanapplications designed for execution on a mobile platform.

At 1220, the method optionally includes generating an input originatingfrom a controller device located on the handheld gaming console. Thecontroller input is generated in response to an interaction with thecontroller device by a user. Further, at 1225, the method includestransmitting the input to the remote device over the communicationnetwork for processing. That is, the input corresponds to an instructionthat is interpreted and handheld by the gaming application as executedby the remote device.

In one embodiment, the method optimally includes executing a front-endportal application on the handheld gaming console. The front-end, nativeapplication is designed to enhance a users gaming experience when usingthe handheld gaming console. For instance, the native application isconfigured to provide notification of plurality of gaming applicationsthat are supported by the remote device as controlled by the handheldcomputing device. Other features of the native application have beenpreviously described, such as, providing access to a social gamingnetwork, listing installed gaming applications available for executionon the handheld gaming console or the remote device, etc.

Further, the method optionally includes integrating the front-endapplication native to the handheld gaming console with a clientapplication executing on the remote computing device. The clientapplication is associated with a third party content provider thatprovides access to a plurality of gaming applications supported by theremote device and/or the handheld gaming console, in combination. Thatis, the front-end application and the client application are integratedto give the end user at the handheld gaming console a seamless interfaceto the client application running on the remote device. For example, theclient application facilitates purchasing and installation of gamingapplications onto the remote device. As such, the method includesgenerating a selection of the gaming application or a selected gamingapplication at the front end portal application. The selection isintended for purchase of the gaming application. The method includestransmitting the selection of the gaming application to the clientapplication from the front-end application. The client device isconnected to the back-end content provider through a communicationnetwork, wherein the content provider provides rights to the selectedgaming application, at a purchase price (including free purchase withlimitations and other revenue generation possibilities). The clientapplication facilitates purchase and installation of the gamingapplication on the remote device.

In one embodiment, the front-end application and the client applicationwork together to determine the plurality of gaming applications suitablefor execution on the remote device and display on the handheld gamingconsole. For instance, one or both of the applications determines afirst configuration settings for the handheld gaming console, anddetermines second configuration settings for the remote device. Theplurality of gaming applications is determined based on the first andsecond configuration settings. That is, the plurality of gamingapplications is suited and/or supported for execution the gamingapplication on the remote device and for display on the handheld gamingconsole.

FIG. 12B is a flow diagram 1200B illustrating a method for providingsupport for a gaming application executable on a remote processingdevice and displaying video on a handheld gaming console, in accordancewith one embodiment of the present disclosure. In still anotherembodiment, flow diagram 1200B illustrates a computer implemented methodfor providing support for providing support for a gaming applicationexecutable on a remote processing device and displaying video on ahandheld gaming console. In another embodiment, flow diagram 1200B isimplemented within a computer system including a processor and memorycoupled to the processor and having stored therein instructions that, ifexecuted by the computer system causes the system to execute a methodfor providing support for a gaming application executable on a remoteprocessing device and displaying video on a handheld gaming console. Instill another embodiment, instructions for performing a method asoutlined in flow diagram 1200B are stored on a non-transitorycomputer-readable storage medium having computer-executable instructionsfor causing a computer system to perform a method for providing supportfor a gaming application executable on a remote processing device anddisplaying video on a handheld gaming console. The method outlined inflow diagram 1200B is implementable by one or more components of thecomputer system 100 and client device 200 of FIGS. 1 and 2,respectively.

At 1250, the method includes executing a gaming application on a remotedevice. For instance, the remote device is a computing device local to ahandheld gaming console, in one embodiment. In another embodiment, theremote device is a virtual machine providing by a cloud computingservice.

At 1255, the method includes generating video of the gaming applicationat the remote device. That is, as the gaming application is executing, aresulting video stream is generated responsive to the inputs provided bythe end user that is manipulating gaming controlling deices at thehandheld gaming console. For instance, the handheld gaming consoleincludes a housing configured for handheld manipulation and at least onecontrolling device exposed on the housing. Also, the handheld gamingconsole also includes an HD display for displaying images. At 1260, thevideo is encoded (e.g., compressed) for purposes of streaming. Forexample, the video is encoded using the H.264, or any suitablecompression protocol.

At 1265, the method includes transmitting the encoded video to ahandheld computing device over a communication network. For instance, inone embodiment, the communication network includes a wireless accesspoint enabling connection to the communication network. In oneimplementation, the communication network comprises a LAN, and theremote device is a local computing device (e.g., a home computer iscoupled to a handheld gaming console operated at home). In anotherimplementation the communication network comprises a WAN, possibly incombination with a LAN, and the remote device is a virtual machinesupported by a cloud based virtual computing service. The cloud basedservice provides one or more high powered virtual machines suitable forprocessing graphics.

The method includes receiving at the remote device over thecommunication network an input generated by an interaction with acontrolling device of the handheld gaming console. The input control istransmitted from the handheld gaming console to the remote device. Atthe remote device, the input is translated into an instruction. In oneembodiment, this is performed by the gaming application, which isconfigured to cross reference control inputs and instructions suitablefor execution within the gaming application. As a result, theinstruction is handled by the gaming application in the remote device,and the resultant video is generated. The process continues with eachnew input received.

TABLE 3 LISTING OF CLAIMS  1. A method for computing, comprising:receiving at a handheld computing device encoded video from a remotecomputing device over a communication network, wherein said remotedevice is configured for executing a gaming application generating videothat is encoded into said encoded video, wherein said handheld computingdevice comprises a housing configured for handheld manipulation and atleast one controlling device exposed on said housing; decoding saidencoded video; and displaying said decoded video on a display of saidhandheld computing device.  2. The method of Claim 1, furthercomprising: generating an input originating from at least onecontrolling device of said handheld computing device; transmitting saidinput to said remote device over said communication network, whereinsaid input corresponds to an instruction handled by said gamingapplication at said remote device.  3. The method of Claim 1, whereinsaid communication network comprises a wireless access point enablingconnection to said communication network.  4. The method of Claim 3,wherein said communication network is taken from a group consistingessentially of a LAN; a WAN; and internet.  5. The method of Claim 1,further comprising: establishing communication with said remote devicethrough said communication network comprising a LAN, wherein said remotedevice comprises a local computing device.  6. The method of Claim 1,further comprising: establishing communication with said remote devicethrough said communication network comprising a WAN, wherein said remotedevice comprises a virtual machine supported by a cloud based virtualcomputing service.  7. The method of Claim 1, further comprising:executing a front-end portal application on said handheld computingdevice, wherein said application is configured to provide notificationof plurality of gaming applications that are supported by said remotedevice as controlled by said handheld computing device; integrating saidfront-end portal application with a client application executing on saidremote device, wherein said client application is associated with athird party content provider providing access to said plurality ofgaming applications supported by said remote device; generating at saidfront-end portal application a selection of said gaming application fromsaid plurality of gaming applications for purchasing said gamingapplication; and transmitting said selection to said client application,wherein said client device is connected to said content provider throughsaid communication network in order to facilitate purchase andinstallation of said gaming application on said remote device.  8. Themethod of Claim 7, further comprising: determining first configurationsettings for said handheld computing device; determining secondconfiguration settings for said remote device; and determining saidplurality of gaming applications based on said first and secondconfiguration settings.  9. A method for computing, comprising:executing a gaming application on a remote device; generating video ofsaid gaming application at said remote device; encoding said video; andtransmitting said encoded video to a handheld computing device over acommunication network, wherein said handheld computing device comprisesa housing configured for handheld manipulation and at least onecontrolling device exposed on said housing, wherein said handheldcomputing device displays decoded video based on said encoded video. 10.The method of Claim 9, further comprising: receiving at said remotedevice over said communication network from said handheld computingdevice an input generated by an interaction with a controlling device ofsaid handheld computing device; and translating said input into aninstruction; and handling said instruction in said gaming application insaid remote device. 11. The method of Claim 9, wherein saidcommunication network is taken from a group consisting essentially of: aLAN; a WAN; and internet. 12. The method of Claim 9, further comprising:establishing communication with said handheld computing device throughsaid communication network comprising a LAN, wherein said remote devicecomprises a local computing device. 13. The method of Claim 9, furthercomprising: establishing communication with said handheld computingdevice through said communication network comprising a WAN, wherein saidremote device comprises a virtual machine supported by a cloud basedvirtual computing service. 14. The method of Claim 9, furthercomprising: executing a client application on said remote device,wherein said client application is associated with a third party contentprovider providing access to said plurality of gaming applicationssupported by said remote device; integrating said client applicationwith a front-end portal application on said handheld computing device,wherein said front-end application is configured to provide notificationof a plurality of gaming applications that are supported by said remotedevice as controlled by said handheld computing device; receiving atsaid client application from said front-end portal application aselection of said gaming application from said plurality of gamingapplications for purchasing said gaming application; navigating to athird party content provider selling said gaming application throughsaid network; facilitating installation of said gaming application onsaid remote device. 15. The method of Claim 14, further comprising:determining first configuration settings for said handheld computingdevice; determining second configuration settings for said remotedevice; and determining said plurality of gaming applications based onsaid first and second configuration settings. 16. A computing device,comprising: a housing configured for handheld manipulation; at least onecontrolling device exposed on said housing and configured for receivinginput from a user that provides an instruction handled by a gamingapplication executed by a remote computing device; a communicationinterface for establishing communication over a communication networkbetween said computing device and said remote computing device, whereinsaid remote coupling device is configured for generating video of saidgaming application and encoding said video; a receiver for receivingsaid encoded video; a decoder for decoding said encoded video; and ahigh definition (HD) display for displaying decoded video. 17. Thecomputing device of Claim 16, future comprising: a controlling devicegenerating an input based on an interaction by an end user with acontrolling device; and a transmitter for transmitting said input tosaid remote device over said communication network, wherein said inputcorresponds to an instruction handled by said gaming application at saidremote device. 18. The computing device of Claim 16, wherein saidcommunication network comprises a LAN, and wherein said remote devicecomprises a local computing device. 19. The computing device of Claim16, wherein said communication network comprises a WAN, and wherein saidremote device comprises a virtual machine supported by a cloud basedvirtual computing service. 20. The computing device of Claim 16, whereinsaid video decoder decodes said video using an H.264 format.Methods and Systems for a Multi-Hop Implementation for Interfacing aRemote Server with a Handheld Gaming Console

FIGS. 13A-B are block diagrams of a handheld gaming console providinginput controls to a back-end server executing a gaming application, anda third electronic device displaying video from the gaming application,in accordance with embodiments of the present disclosure. The systemenvironments described in FIGS. 13A-B are identical; however, FIG. 13Billustrates the addition of a companion application that is integratedwithin the execution of a gaming app.

As shown in FIG. 13A, a gaming application is implemented acrossmultiple devices. In particular, a first electronic device is configuredfor executing a gaming application and for generating video of thegaming application. For instance, in one embodiment the first electronicdevice is the locally based server 1385 (e.g., a home PC, laptop) thatis coupled to other electronic devices through a communication network1365 (e.g., access points, LAN, WAN, peer-to-peer, Wi-Fi, cellular,4GLTE, etc.). In another embodiment, the first electronic device is acloud based server (e.g., a virtual machine supported by a cloud basedservice) this is coupled through the same and/or extended communicationnetwork 1365.

By executing the gaming application, on a server platform, no processinglimitations are placed on the type of gaming application that can beenjoyed by the end user. That is, the execution of the gamingapplication occurs on a first electronic device, but the display of thevideo from that gaming application is streamed to other electronicdevices, such as, a third electronic device. As such, video encoding isperformed by a video encoder at the first electronic device, to encodethe video into an encoded video stream that can be streamed to otherdevices.

A second electronic device comprising a handheld computing device 720,such as a gaming console, is communicatively coupled to the firstelectronic device through the network 1365. The handheld gaming console720 shown in FIGS. 13A-B in one embodiment is described in relation toFIG. 7A, and in one embodiment is the same as or similar to the handheldgaming console 410 of FIGS. 4A and 4B. For example, the gaming console720 may include a display similar to the console display 450 of FIG. 4A.In particular, the handheld computing device is configured for receivingan input based on an interaction with at least one controlling device(e.g., a button, joystick, etc.). The control input provides aninstruction that is handled by the gaming application. As such, thecontrol input is delivered from the handheld gaming console 720 toeither the locally based sever 1385 or cloud based server 1380 throughthe communication network 1365 where the gaming application is executed,through wired and/or wireless interfaces.

In addition, a third electronic device displays the video from thegaming application. The display 1355 may be any display, for example, alarge display like a flat panel HDTV, and is configured to displaystreaming video originating from the gaming application.

In one embodiment, the handheld gaming console 750 is configured forreceiving the encoded video stream from either the locally based sever1385 or cloud based server 1380 through the communication network 1365where the gaming application is executed, such as through wired and/orwireless interfaces and may include local area network (LAN) and/or widearea network (WAN) options or portions. In that case, the gaming console750 decodes the encoded video stream, and streams the decoded videostream to the third electronic device, such as, display 1355. Forinstance, the decoded video is delivered via an HDMI cable. In stillanother embodiment, the gaming console 720 delivers decoded or encodedvideo to the display 1355 through a wired or wireless network to thedisplay 1355. For instance, a peer-to-peer connection may be establishedfor the delivery of the video.

In another embodiment, the encoded video stream is delivered from eitherthe locally based sever 1385 or cloud based server 1380 where the gamingapplication is executed to the third electronic device, such as, display1355, through the communication network 1365, such as through wiredand/or wireless interfaces and may include local area network (LAN)and/or wide area network (WAN) options or portions. The display 1355 isconfigured to decode the encoded video stream for display. In oneimplementation, the communication interface dongle 1310 optionallyreceives the encoded video that is streamed to the display 1355, decodesthe encoded video stream, and sends decoded video to the display 1355.

In another embodiment, the encoded video is delivered to a third partyweb service (e.g., YouTube, gaming storage services, etc.) that isconfigured to store and provide access to the video stream generated bythe gaming application. As such, the encoded video stream is deliveredfrom either the locally based sever 1385 or cloud based server 1380where the gaming application is executed to the third electronic device,which in this implementation is a web service. The web service isconfigured to handle the video stream in multiple forms (e.g., encoded,decoded, etc.).

FIG. 14 is a flow diagram 1400 illustrating a method for implementing agaming application across multiple devices, in accordance with oneembodiment of the present disclosure. In still another embodiment, flowdiagram 1400 illustrates a computer implemented method for implementinga gaming application across multiple devices. In another embodiment,flow diagram 1400 is implemented within a computer system including aprocessor and memory coupled to the processor and having stored thereininstructions that, if executed by the computer system causes the systemto execute a method for implementing a gaming application acrossmultiple devices. In still another embodiment, instructions forperforming a method as outlined in flow diagram 1400 are stored on anon-transitory computer-readable storage medium havingcomputer-executable instructions for causing a computer system toperform a method for implementing a gaming application across multipledevices. The method outlined in flow diagram 1400 is implementable byone or more components of the computer system 100 and client device 200of FIGS. 1 and 2, respectively, as well as handheld computing consolesdescribed throughout this Application (e.g., console 600A of FIG. 6A).

As shown in FIG. 14, at 1410 the method includes executing a gamingapplication at a first electronic device. For instance, the gamingapplication is executed by a locally based server (e.g., in a homeenvironment), or a cloud based server, as previously described. Byexecuting the gaming application, on a server platform, no processinglimitations are placed on the type of gaming application that can beenjoyed by the end user. As such, video from the gaming application isgenerated at the first electronic device, at 1420. For purposes ofdelivery over a communication network, the video is encoded into anencoded video stream at the first electronic device, at 1430. In thatmanner, encoded video is streamed to a different device over acommunication network for display.

At 1440, a control input is received at the first electronic device overthe communication network. Although the gaming application is executedat the first electronic device (e.g., server), the end user is providecontrol input at a second electronic device, such as, a handheld gamingconsole. The input is generated at the gaming console based on aninteraction with at least one controlling device. The input provides aninstruction that is handled by the gaming application. As such, deliveryof the control input is made over a communication networkcommunicatively coupling the first and second electronic devices.

At 1450, the method includes displaying at a third electronic device(e.g., HD display) the encoded video stream that is decoded. Varioussystem configurations may be implemented to deliver video to the thirdelectronic device. For instance, in one embodiment, the video isdelivered via a second electronic device, such as, the gaming console.In another embodiment, the video is delivered directly from the firstelectronic device to the third electronic device.

In the case where the video is delivered from the second electronicdevice to the display, the method includes streaming the encoded videostream from the first electronic device to the second electronic deviceover a communication network. That is, server that is executing thegaming application delivers the encoded video stream to the gamingconsole. The gaming console then decodes the encoded videos stream, anddelivers a decoded video stream directly to the third electronic device,such as, an HD display.

On the other hand, the video may be directly delivered to the thirdelectronic device. In that case, the encoded video stream is deliveredfrom the server that is executing the gaming application to the thirdelectronic device over a communication network. The encoded video streamis decoded at the third electronic device for display. In oneimplementation, a communication interface dongle is used to receive theencoded video stream, decode the encoded video, and deliver decodedvideo to the third electronic device, such as, a display.

In one embodiment, the third electronic device comprises a web service,or web content provider. That is, the video stream is delivered to theweb service for storage and access. For example, the web service maystore video that is continually streaming from an end user's computer.

In one embodiment, the gaming console is configured to display a secondvideo that is generated by the gaming application. The method includesgenerating first video of the gaming application at the first electronicdevice (e.g., server), wherein the first video comprises firstinformation. In addition, second video of the gaming app is generated atthe first electronic device. Both that first and second video areencoded by the first electronic device. In one case, the first encodedvideo is streamed and/or transmitted to the third electronic device(e.g., HD display) for display. The second encoded video is streamedand/or transmitted to the second electronic device or gaming console fordisplay. For example, the first video may be the main view of the game,whereas the second video may show a secondary view (e.g., spectatorview, map information, drone video, life information, HUD information,etc.), or statistics related to game play, hints related to game play,etc. For instance in a car racing gaming application, the thirdelectronic device shows a video of a cockpit view, while the gamingconsole shows a view originating from rear view mirror.

In one embodiment, the second information displayed on the secondelectronic device is generated by a companion application executing onthe second electronic device. For instance, a gaming console may executea companion application that supports or is running in parallel with thegaming application that is executing on the first electronic device(e.g., server). FIG. 13B illustrates a companion application 1310 thatis executing on the gaming console 720, wherein the video generated bythe companion application 1310 is displayed on display 750.

In that case, first video of the gaming application is generated at thefirst electronic device, and comprises first information. The firstvideo is encoded and streamed to the third electronic device fordisplay. In parallel, a companion application to the gaming applicationis executed on the second electronic device, such as, a gaming console.In particular, second video of the companion application is generatedand comprises second information, wherein the companion application isexecuting on the second electronic device. The second video is displayedat the second electronic device, such as, the gaming console. Asillustration, the companion application may provide updates to the game,or provide information related to other users who are playing the game.In one implementation, the companion application is integrated with thegaming application as executed on the first electronic device, whereininformation is passed between the gaming application and the companionapplication that are executed on the first and second electronicdevices.

TABLE 4 LISTING OF CLAIMS  1. A method for computing, comprising:executing a gaming application at a first electronic device; generatingvideo of said gaming application at said first electronic device;encoding said video into an encoded video stream at said firstelectronic device; receiving an input based on an interaction with atleast one controlling device of a second electronic device, wherein saidinput provides an instruction handled by said gaming application,wherein said second electronic device comprises a handheld computingdevice, wherein communication is established between said first andsecond electronic device over a communication network; and displaying ata third electronic device said encoded video stream that is decoded.  2.The method of Claim 1, wherein said displaying said encoded video streamcomprises: streaming said encoded video stream from said firstelectronic device to said second electronic device over saidcommunication network; decoding said encoded video stream at said secondelectronic device; streaming said encoded video stream that is decodedfrom said second electronic device to said third electronic device.  3.The method of Claim 1, where said displaying said encoded video streamcomprises: streaming said encoded video stream from said firstelectronic device to said third electronic device over saidcommunication network; and decoding said encoded video stream at saidthird electronic device.  4. The method of Claim 3, wherein said thirdelectronic device comprises a computer interface dongle configured forreceiving said encoded video stream and decoding said encoded videostream.  5. The method of Claim 1, wherein said first electronic devicecomprises a locally based server computer, and wherein said thirdelectronic device comprises an HD display.  6. The method of Claim 1,wherein said first electronic device comprises a locally based servercomputer, and wherein said third electronic device comprises a webservice.  7. The method of Claim 1, wherein said first computing devicecomprises a virtual machine supported by a cloud based server, andwherein said third electronic device comprises an HD display.  8. Themethod of Claim 1, wherein said first computing device comprises avirtual machine supported by a cloud based server, and wherein saidthird electronic device comprises a web service.  9. The method of Claim1, wherein said generating video further comprises: generating a firstvideo of said gaming application comprising first information at saidfirst electronic device; encoding said first video; transmitting saidencoded first video to said third device for display; generating asecond video of said gaming application comprising second information atsaid first electronic device; encoding said second video; andtransmitting said encoded second video to said second electronic devicefor display. 10. The method of Claim 1, wherein said generating videofurther comprises: generating a first video of said gaming applicationcomprising first information at said first computing device; encodingsaid first video; transmitting said encoded first video to said thirdelectronic device for display; executing a companion application to saidgaming application at said second electronic device; generating a secondvideo of said companion application comprising second information atsaid second electronic device; and displaying said second video at saidsecond computing device. 11. The method of Claim 10, wherein said secondinformation is taken from a group consisting essentially of: mapinformation; drone view; spectator view; life information; and heads updisplay information. 10. A system for computing, comprising: a firstelectronic device configured for executing a gaming application and forgenerating video of said gaming application; a video encoder at saidfirst electronic device for encoding said video into an encoded videostream; a second electronic device comprising a handheld computingdevice, wherein said second electronic device is configured forreceiving an input based on an interaction with at least one controllingdevice of a second electronic device, wherein said input provides aninstruction handled by said gaming application; a communication networkfor delivering said input from said second electronic device to saidfirst electronic device; and a third electronic device for displayingsaid encoded video stream that is decoded. 11. The system of Claim 10,wherein said second electronic device is configured for receiving saidencoded video stream from said first electronic device, decoding saidencoded video stream, and streaming said decoded video stream to saidthird electronic device. 12. The system of Claim 10, wherein said thirdelectronic device is configured for receiving said encoded video streamfrom said first electronic device, and decoding said encoded videostream for display. 13. The system of Claim 10, wherein said firstelectronic device comprises a locally based server computer, and whereinsaid third electronic device comprises an HD display. 14. The system ofClaim 10, wherein said first computing device comprises a virtualmachine supported by a cloud based server, and wherein said thirdelectronic device comprises an HD display. 15. A non-transitory computerreadable medium having computer executable instructions for causing acomputer system to perform a method for computing, wherein said methodcomprises: executing a gaming application at a first electronic device;generating video of said gaming application at said first electronicdevice; encoding said video into an encoded video stream at said firstelectronic device; receiving an input based on an interaction with atleast one controlling device of a second electronic device, wherein saidinput provides an instruction handled by said gaming application,wherein said second electronic device comprises a handheld computingdevice, wherein communication is established between said first andsecond electronic device over a communication network; and displaying ata third electronic device said encoded video stream that is decoded. 16.The computer readable medium of Claim 15, wherein said displaying saidencoded video stream in said method comprises: streaming said encodedvideo stream from said first electronic device to said second electronicdevice over said communication network; decoding said encoded videostream at said second electronic device; streaming said encoded videostream that is decoded from said second electronic device to said thirdelectronic device. 17. The computer readable medium of Claim 15, wheresaid displaying said encoded video stream in said method comprises:streaming said encoded video stream from said first electronic device tosaid third electronic device over said communication network; anddecoding said encoded video stream at said third electronic device. 18.The computer readable medium of Claim 15, wherein in said method saidfirst electronic device comprises a locally based server computer, andwherein said third electronic device comprises an HD display. 19. Thecomputer readable medium of Claim 15, wherein in said method said firstcomputing device comprises a virtual machine supported by a cloud basedserver, and wherein said third electronic device comprises an HDdisplay. 20. The computer readable medium of Claim 15, wherein saidgenerating video in said method further comprises: generating a firstvideo of said gaming application comprising first information at saidfirst electronic device; encoding said first video; transmitting saidencoded first video to said third device for display; generating asecond video of said gaming application comprising second information atsaid first electronic device; encoding said second video; andtransmitting said encoded second video to said second electronic devicefor display.Methods and Systems for a Multi-Player Gaming System Implemented Acrossa Plurality of Handheld Gaming Consoles and other Electronic Devices

FIG. 15 is an illustration of a system environment 1500 in which aplurality of handheld gaming consoles are executing a plurality ofgaming applications in a multi-player mode, in accordance with oneembodiment of the present disclosure. In particular, system 1500comprises a plurality of various electronic devices used for executionand display of a plurality of gaming applications.

As shown in FIG. 15, a plurality of handheld computing devices 720A-N isconfigured for executing a plurality of gaming applications in amulti-player mode. That is, multiple players are playing the same gamingapplication, but in multi-player mode. Each of the plurality of handheldcomputing devices executes a corresponding gaming application for acorresponding end user. In various embodiments, each of the gamingconsoles 720 A-N may execute a video game using components discussedabove with reference to FIGS. 1, 2, 4, and 5, like a processor, graphicsprocessing system, memory, and so on.

In particular, each handheld computing device 720A-N is described inrelation to FIG. 7A, and in one embodiment is the same as or similar tothe handheld gaming console of 410 of FIGS. 4 a and 4B. For example,each of the gaming consoles 720A-N may include a corresponding display750A-N similar to the console display 450 of FIG. 4A. Specifically, arepresentative handheld computing device 720 includes a housingconfigured for handheld manipulation, a processor contained within thehousing that is configured for executing the gaming application, memorycontained within the housing that is configured for storing executablesof the gaming application, and at least one controlling device (e.g.,stick, button, etc.). In particular, the handheld computing device 720is configured for receiving an input based on an interaction with thecontrolling device. The control input provides an instruction that ishandled by the gaming application that is executing on the correspondinghandheld computing device.

As shown in FIG. 15, each of the handheld computing device 720A-N iscommunicatively coupled to each other to facilitate a multi-player mode.In one embodiment, the handheld computing devices 720A-N communicatedirectly with each other through a peer-to-peer network. In anotherembodiment, the handheld computing devices 720A-N communicate with eachother through communication network 1565, e.g., through wired orwireless interfaces. The network 1565 may be similar to the network 350of FIG. 3 and may include all or portions of access points, LAN, WAN,peer-to-peer, Wi-Fi, cellular, 4GLTE, etc.

In one embodiment, the plurality of handheld computing devices generatesa plurality of videos of the gaming applications, wherein execution ofthe gaming applications is integrated in multi-player mode. Theplurality of videos operating system displayed at each of the pluralityof handheld computing devices across a plurality of displays. Forinstance, a handheld computing device executes a corresponding gamingapplication, generates corresponding video, and displays that video on acorresponding display of the handheld device.

In another embodiment, the plurality of handheld computing devicesgenerates a plurality of videos of the gaming applications, encodes theplurality of videos and streams the plurality of encoded videos to asecond electronic device for display. For instance, the plurality ofvideos is displayed in a plurality of windows of a second electronicdevice such as, device 1555. In one implementation, a communicationinterface dongle 1510 optionally receives the encoded video that isstreamed to the display 1555 from each of the plurality of handhelddevices, decodes the encoded video streams, and sends decoded video tothe second electronic device 1555. In one implementation, the secondelectronic device is a flat panel HD television. The display isconfigured to display the plurality of videos in a plurality of windowsthat are streamed from the plurality of handheld computing devices720A-N executing a plurality of gaming applications in multi-playermode.

FIG. 16 is a flow diagram 1600 illustrating a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at the plurality of handheld gaming consoles, in accordancewith embodiments of the present disclosure. In still another embodiment,flow diagram 1600 illustrates a computer implemented method forimplementing a plurality of gaming applications across a plurality ofhandheld gaming consoles in a multi-player mode, wherein a plurality ofvideos is displayed at the plurality of handheld gaming consoles. Inanother embodiment, flow diagram 1600 is implemented within a computersystem including a processor and memory coupled to the processor andhaving stored therein instructions that, if executed by the computersystem causes the system to execute a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at the plurality of handheld gaming consoles. In still anotherembodiment, instructions for performing a method as outlined in flowdiagram 1600 are stored on a non-transitory computer-readable storagemedium having computer-executable instructions for causing a computersystem to perform a method for implementing a plurality of gamingapplications across a plurality of handheld gaming consoles in amulti-player mode, wherein a plurality of videos is displayed at theplurality of handheld gaming consoles. The method outlined in flowdiagram 1600 is implementable by one or more components of the computersystem 100 and client device 200 of FIGS. 1 and 2, respectively, as wellas handheld computing consoles described throughout this Application(e.g., console 600A of FIG. 6A).

At 1610, the method includes executing a plurality of gamingapplications at a plurality of handheld computing devices. That is,multiple players are playing the same gaming application, but inmulti-player mode. Each of the plurality of handheld computing devicesexecutes a corresponding gaming application for a corresponding enduser. Each handheld computing device includes a housing configured forhandheld manipulation, a processor contained within the housing that isconfigured for executing the gaming application, memory contained withinthe housing that is configured for storing executables of the gamingapplication, and at least one controlling device (e.g., stick, button,etc.). In particular, a corresponding handheld computing device isconfigured for receiving an input based on an interaction with thecontrolling device. The control input provides an instruction that ishandled by the gaming application that is executing on the correspondinghandheld computing device.

At 1620, the method includes generating a plurality of videos of theplurality of gaming applications. That is, at each handheld computingdevice, a corresponding gaming application is executed, and acorresponding video from that gaming application is generated. Thatcorresponding video is associated with a particular end user playing thegaming application on the corresponding handheld computing device.

At 1630, the method includes establishing communication between theplurality of handheld computing devices over a communication network. At1640, the method includes integrating execution of the plurality ofgaming applications in a multi-player mode. That is, each of theplurality of handheld computing devices are communicatively coupled toeach other to facilitate a multi-player mode. The handheld electronicdevices may communicate with each other, for example, through acommunication network (e.g., access points, LAN, WAN, internet,peer-to-peer communication, etc.). However, the handheld computingdevices may be communicatively coupled directly with one another, forexample through a wireless (e.g., peer-to-peer) or wired interface. As aresult, the gaming consoles may cooperate with one another to supportmultiplayer games. For example, a game being executed on one handheldcomputing device may communicate with another instance of the same gamebeing executed on another handheld computing device to provide amultiplayer gaming experience.

At 1650, the method includes displaying the plurality of videos at theplurality of handheld computing devices. That is, the plurality ofvideos is displayed at each of the plurality of handheld computingdevices across a plurality of displays. For instance, a handheldcomputing device executes a corresponding gaming application, such thatthe gaming application is an instantiation of a common gamingapplication used for multi-player gaming. The handheld computing devicegenerates corresponding video, and displays that video on acorresponding display of the handheld device.

In another embodiment, additional content and/or video is generated thatis related to the gaming applications executed in multi-player mode. Forexample, at one of the plurality of handheld computing devices, a secondvideo is generated from a corresponding gaming applications executing onthe corresponding handheld computing device. The second video is relatedto the multi-player gaming experience. For instance, the second videomay provide a spectator view of the gaming application, or mappinginformation, or statistics, etc. the second video is encoded into anencoded video stream (e.g., following the H.264 standard), and streamedto a second electronic device over a communication network. The secondelectronic device decodes the encoded video stream, and displays thedecoded video stream at the second electronic device (e.g., an HDdisplay). In that particular case, the handheld computing device isstill generating first video that may provide a specific player's view(e.g., cockpit view of a driving application) of a corresponding gamingapplication as that player is playing. That first video is displayed atthe handheld computing device, as previously described.

In one embodiment, the method includes executing a front end applicationon the handheld gaming console, wherein the native application isassociated with and supports the gaming experience surrounding thehandheld computing device, such as, a gaming console. For instance, thenative application is configured to provide notification of games thatare supported by the corresponding handheld gaming console. In oneembodiment, a selection of a game is received for purchase. A connectionis made between the handheld gaming console to a third party contentprovider through a communication network. The third party is capable ofselling the gaming application through the network. Installation of thegaming application is facilitated by the native application onto thegaming console, so that the gaming application is executable on thegaming console.

FIG. 17 is a flow diagram 1700 illustrating a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at a plurality of windows of a display, in accordance withembodiments of the present disclosure. In another embodiment, flowdiagram 1700 is implemented within a computer system including aprocessor and memory coupled to the processor and having stored thereininstructions that, if executed by the computer system causes the systemto execute a method for implementing a plurality of gaming applicationsacross a plurality of handheld gaming consoles in a multi-player mode,wherein a plurality of videos is displayed at a plurality of windows ofa display. In still another embodiment, instructions for performing amethod as outlined in flow diagram 1700 are stored on a non-transitorycomputer-readable storage medium having computer-executable instructionsfor causing a computer system to perform a method for implementing aplurality of gaming applications across a plurality of handheld gamingconsoles in a multi-player mode, wherein a plurality of videos isdisplayed at a plurality of windows of a display. The method outlined inflow diagram 1700 is implementable by one or more components of thecomputer system 100 and client device 200 of FIGS. 1 and 2,respectively, as well as handheld computing consoles describedthroughout this Application (e.g., console 600A of FIG. 6A).

At 1710, the method includes executing a plurality of gamingapplications at a plurality of handheld computing devices. That is,multiple players are playing the same gaming application, but inmulti-player mode. Each of the plurality of handheld computing devicesexecutes a corresponding gaming application for a corresponding enduser. Each handheld computing device includes a housing configured forhandheld manipulation, a processor contained within the housing that isconfigured for executing the gaming application, memory contained withinthe housing that is configured for storing executables of the gamingapplication, and at least one controlling device (e.g., stick, button,etc.). In particular, a corresponding handheld computing device isconfigured for receiving an input based on an interaction with thecontrolling device. The control input provides an instruction that ishandled by the gaming application that is executing on the correspondinghandheld computing device.

At 1720, the method includes generating a plurality of videos of theplurality of gaming applications. That is, at each handheld computingdevice, a corresponding gaming application is executed, and acorresponding video from that gaming application is generated. Thatcorresponding video is associated with a particular end user playing thegaming application on the corresponding handheld computing device. Eachof the gaming applications comprises an instantiation of a common gamingapplication that is executing in multi-player mode.

At 1730, the method includes establishing communication between theplurality of handheld computing devices over a communication network. At1740, the method includes integrating execution of the plurality ofgaming applications in a multi-player mode. That is, each of theplurality of handheld computing devices are communicatively coupled toeach other to facilitate a multi-player mode. The handheld electronicdevices may communicate with each other, for example, through acommunication network (e.g., access points, LAN, WAN, internet,peer-to-peer communication, etc.). However, the handheld computingdevices may be communicatively coupled directly with one another, forexample through a wireless (e.g., peer-to-peer) or wired interface. As aresult, the gaming consoles may cooperate with one another to supportmultiplayer games. For example, a game being executed on one handheldcomputing device may communicate with another instance of the same gamebeing executed on another handheld computing device to provide amultiplayer gaming experience.

At 1750, the method includes displaying the plurality of videos at asecond electronic device. In particular, the plurality of videos isencoded at each of the plurality of handheld computing devices togenerate a plurality of encoded videos (e.g., using the H.264 format, orany other compression format). The plurality of encoded videos isstreamed from the plurality of handheld computing devices to the secondelectronic device. The plurality of encoded videos is decoded togenerate a plurality of decoded videos. In one embodiment, the decodingis performed by the second electronic device. In another embodiment, thedecoding is performed by a communication interface dongle that isconfigured to decode encoded video, and send the decoded videos streamsto the second electronic device.

In one embodiment, the plurality of decoded videos is displayed in aplurality of windows of the second electronic device. In one embodiment,the second electronic device may any type of display, for example, alarge display like a flat panel HDTV, and is configured to displaystreaming video originating from the plurality of gaming applications

While the second electronic device shows and plays the plurality ofvideos generated from the plurality of executed gaming applications, oneor more displays of the plurality of handheld computing devices may notdisplay any content at all or any content related to the video game, inone embodiment. However, in another embodiment, additional contentand/or video is generated that is related to the gaming applicationsexecuted in multi-player mode. For example, at one of the plurality ofhandheld computing devices, a second video is generated from acorresponding gaming applications executing on the correspondinghandheld computing device. The second video is related to themulti-player gaming experience. For instance, the second video mayprovide information related to a player, such as, statisticalinformation, taunts from other players, hints related to game play,and/or a secondary view of the application (e.g., cockpit view of theinstrumentation in a driving game).

In one embodiment, the second video is displayed at the handheldcomputing device that generated the second video. In still anotherembodiment, the second video is displayed at another device, such as,the second electronic device (e.g., in another window). In that case,the second video is encoded into an encoded video stream, and streamedto the other electronic device over a communication network, where it isdecoded and displayed. In still another embodiment, a third video isgenerated by the handheld computing device. As such, the handheldcomputing device generates one or more video streams, which may bestreamed to one or more electronic devices for display, including thehandheld computing device that generates the streams.

It should be appreciated that there may be more than one display coupledwith the plurality of handheld electronic devices. For example, if thenumbers of players is large, then more than one display may be requiredto accommodate the various videos generated by the gaming applications.

TABLE 5 LISTING OF CLAIMS  1. A method for computing, comprising:executing a plurality of gaming applications at a plurality of handheldcomputing devices, wherein each of said plurality of handheld computingdevice comprises: a housing configured for handheld manipulation; aprocessor contained within said housing and configured for executingsaid gaming application; memory contained within said housing andconfigured for storing executables of said gaming application; and atleast one controlling device exposed on said housing and configured forreceiving input from an end user that provides an instruction handled bysaid gaming application; generating a plurality of videos of saidplurality of gaming applications at said plurality of handheld computingdevices; establishing communication between said plurality of handheldcomputing devices over a communication network; integrating execution ofsaid plurality of gaming applications in a multi-player mode; anddisplaying said plurality of videos at said plurality of handheldcomputing devices.  2. The method of Claim 1, further comprising:generating second video of one of said plurality of gaming applicationsat one of said plurality of handheld computing devices; encoding saidsecond video into an encoded video stream; receiving said encoded videostream at an second electronic device over a communication network;decoding said encoded video stream; and displaying said decoded video atsaid second electronic device.  3. The method of Claim 2, furthercomprising; generating first video of one of said plurality of gamingapplications at said one of said plurality of handheld computingdevices; displaying said first video at a corresponding display of saidone of said plurality of handheld computing devices.  4. The method ofClaim 2, wherein said second electronic device comprises an HD display. 5. The method of Claim 2, wherein said encoding said second videocomprises: generating a spectator view of said plurality of gamingapplications executed on said plurality of handheld electronic devices. 6. The method of Claim 1, wherein said generating a plurality of videoscomprises: generating a corresponding video at a corresponding handheldcomputing device, wherein each of said plurality of gaming applicationscomprises an instantiation of a common gaming application.  7. Themethod of Claim 2, wherein said encoding said second video comprisesencoding said second video using an H.264 format.  8. The method ofClaim 1, further comprising: executing a front-end portal application onat least one handheld computing device, wherein said application isaffiliated with an entity associated with said at least one handheldcomputing device, wherein said application is configured to providenotification of games including said gaming application that aresupported by said at least one handheld computing device; receiving aselection by a user for purchasing said gaming application; connectingsaid handheld computing device to network through a communicationinterface; navigating to a third party content provider selling saidgaming application through said network; and facilitating installationof said gaming application on said handheld computing device.  9. Asystem for computing, comprising: a plurality of handheld computingdevices configured for executing a plurality of gaming applications,wherein each of said plurality of handheld computing device comprises: ahousing configured for handheld manipulation; a processor containedwithin said housing and configured for executing one of said pluralityof gaming applications; memory contained within said housing andconfigured for storing executables of said gaming application; and atleast one controlling device exposed on said housing and configured forreceiving input from an end user that provides an instruction handled byone of said gaming applications; a plurality of videos of said pluralityof gaming applications generated by said plurality of handheld computingdevices, wherein execution of said plurality of gaming applications isintegrated in a multi-player mode; a communication network facilitatingcommunication between said plurality of handheld computing devices; aplurality of displays at said plurality of handheld computing devicesfor displaying said plurality of videos. 10. The system of Claim 9,wherein one of said plurality of handheld computing devices isconfigured for generating and encoding second video of a gamingapplication executed at one of said plurality of handheld computingdevices; and a second electronic device configured to receive saidencoded second video, decode said encoded second video and display saiddecoded second video. 11. A method for computing, comprising: executinga plurality of gaming applications at a plurality of handheld computingdevices, wherein each of said handheld computing devices comprises: ahousing configured for handheld manipulation; a processor containedwithin said housing and configured for executing said gamingapplication; memory contained within said housing and configured forstoring executables of said gaming application; and at least onecontrolling device exposed on said housing and configured for receivinginput from an end user that provides an instruction handled by saidgaming application; generating a plurality of videos of said pluralityof gaming applications at said plurality of handheld computing devices;establishing communication between said plurality of handheld computingdevices over a communication network; integrating execution of saidplurality of gaming applications in a multi-player mode; and displayingsaid plurality of videos at a second electronic device. 12. The methodof Claim 11, wherein said second electronic device comprises an HDdisplay. 13. The method of Claim 11, further comprising: encoding saidplurality of videos at said plurality of handheld computing devices togenerate a plurality of encoded videos; streaming said plurality ofencoded videos from said plurality of handheld computing devices to saidsecond electronic device; decoding said plurality of encoded videos atsaid second electronic device to generate a plurality of decoded videos;and displaying said plurality of decoded video in a plurality of windowsof said second electronic device. 14. The method of Claim 11, whereinsaid generating a plurality of videos comprises: generating acorresponding video at a corresponding handheld computing device,wherein each of said plurality of gaming applications comprises aninstantiation of a common gaming application executing in saidmulti-player mode. 15. The method of Claim 11, wherein said encodingsaid plurality of videos comprises encoding said plurality of videosusing an H.264 format. 16. The method of Claim 11, further comprising:executing a front-end portal application on at least one handheldcomputing device, wherein said application is affiliated with an entityassociated with said at least one handheld computing device, whereinsaid application is configured to provide notification of games such as,said gaming application that are supported by said at least one handheldcomputing device; receiving a selection by a user for purchasing saidgaming application; connecting said handheld computing device to networkthrough a communication interface; navigating to a third party contentprovider selling said gaming application through said network; andfacilitating installation of said gaming application on said handheldcomputing device. 17. The method of Claim 11, further comprising:generating second video of one of said plurality of gaming applicationsat one of said plurality of handheld computing devices; encoding saidsecond video into an encoded video stream; receiving said encoded videostream at said second electronic device over a communication network;decoding said encoded video stream at said second electronic device; anddisplaying said decoded video in a window at said second electronicdevice. 18. The method of Claim 17, further comprising; generating thirdvideo of one of said plurality of gaming applications at said one ofsaid plurality of handheld computing devices; displaying said thirdvideo at a corresponding display of said one of said plurality ofhandheld computing devices. 19. The method of Claim 11, furthercomprising: generating second video of one of said plurality of gamingapplications at one of said plurality of handheld computing devices;displaying said second video at said one of said plurality of handheldcomputing devices. 20. A system for computing, comprising: a pluralityof handheld computing devices, wherein each of said plurality ofhandheld computing device comprises: a housing configured for handheldmanipulation; a processor contained within said housing and configuredfor executing said gaming application; memory contained within saidhousing and configured for storing executables of said gamingapplication; and at least one controlling device exposed on said housingand configured for receiving input from an end user that provides aninstruction handled by said gaming application; a plurality of videos ofsaid plurality of gaming applications generated by said plurality ofhandheld computing devices, wherein execution of said plurality ofgaming applications is integrated in a multi-player mode; acommunication network facilitating communication between said pluralityof handheld computing devices; a second electronic device configured fordisplaying said plurality of videos in a plurality of windows.

Thus, according to embodiments of the present disclosure, systems andmethods are described providing for the implementation of a gamingapplication across one or more electronic device.

While the foregoing disclosure sets forth various embodiments usingspecific block diagrams, flowcharts, and examples, each block diagramcomponent, flowchart step, operation, and/or component described and/orillustrated herein may be implemented, individually and/or collectively,using a wide range of hardware, software, or firmware (or anycombination thereof) configurations. In addition, any disclosure ofcomponents contained within other components should be considered asexamples in that many architectural variants can be implemented toachieve the same functionality.

The process parameters and sequence of steps described and/orillustrated herein are given by way of example only and can be varied asdesired. For example, while the steps illustrated and/or describedherein may be shown or discussed in a particular order, these steps donot necessarily need to be performed in the order illustrated ordiscussed. The various example methods described and/or illustratedherein may also omit one or more of the steps described or illustratedherein or include additional steps in addition to those disclosed.

While various embodiments have been described and/or illustrated hereinin the context of fully functional computing systems, one or more ofthese example embodiments may be distributed as a program product in avariety of forms, regardless of the particular type of computer-readablemedia used to actually carry out the distribution. The embodimentsdisclosed herein may also be implemented using software modules thatperform certain tasks. These software modules may include script, batch,or other executable files that may be stored on a computer-readablestorage medium or in a computing system. These software modules mayconfigure a computing system to perform one or more of the exampleembodiments disclosed herein. One or more of the software modulesdisclosed herein may be implemented in a cloud computing environment.Cloud computing environments may provide various services andapplications via the Internet. These cloud-based services (e.g.,software as a service, platform as a service, infrastructure as aservice, etc.) may be accessible through a Web browser or other remoteinterface. Various functions described herein may be provided through aremote desktop environment or any other cloud-based computingenvironment.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, to therebyenable others skilled in the art to best utilize the invention andvarious embodiments with various modifications as may be suited to theparticular use contemplated.

Embodiments according to the present disclosure are thus described.While the present disclosure has been described in particularembodiments, it should be appreciated that the disclosure should not beconstrued as limited by such embodiments, but rather construed accordingto the below claims.

What is claimed:
 1. A computing device, comprising: a housing configuredfor handheld manipulation; a processor contained within said housing andconfigured for executing a gaming application; memory contained withinsaid housing and configured for storing executables of said gamingapplication; at least one control button exposed on said housing andconfigured for receiving input from a user that provides an instructionfor said gaming application; and a high definition (HD) display fordisplaying video from said gaming application.
 2. The computing deviceof claim 1, wherein said HD display comprises a touch screen display. 3.The computing device of claim 1, further comprising: an Android®operating system.
 4. The computing device of claim 1, furthercomprising: an active cooling system configured for cooling saidhandheld computing device.
 5. The computing device of claim 1, furthercomprising: an internal battery source.
 6. The computing device of claim1, further comprising: a communication interface configured to connectsaid computing device to a network; a front-end portal applicationexecutable by said handheld computing device, wherein said applicationis affiliated with an entity associated with said handheld computingdevice, wherein said application is configured to provide notificationof games such as, said gaming application that are supported by saidhandheld computing device, wherein upon receiving a selection by a userfor purchasing said gaming application said portal application isconfigured to navigate to a third party content provider selling saidgaming application, and facilitating installation of said gamingapplication on said handheld device.
 7. The computing device of claim 6,wherein said front-end portal application comprises a social networkingplatform.
 8. The computing device of claim 6, wherein said front-endportal application periodically receives updates from a back end serverassociated with said entity.
 9. The computing device of claim 1, furthercomprising: a video encoder for encoding video from said gamingapplication into a video stream; and a peer-to-peer communicationinterface configured to transmit said video stream to a second devicefor display.
 10. The computing device of claim 9, wherein said videoencoder encodes said video using an H.264 format.
 11. The computingdevice of claim 9, wherein said second device is taken from a groupconsisting essentially of: a display receiver; a cable set-top box; amicro-console; an HD television; an HD monitor; a second computingdevice configured as said computing device of claim
 1. 12. The computingdevice of claim 9, wherein said communication interface comprises awired interface or a wireless interface.
 13. A method for computing,comprising: executing a gaming application on a handheld computingdevice; receiving an input originating from at least one control button,wherein said input provides an instruction for said gaming application;and displaying video of said gaming application on a high definitiondisplay of said handheld computing device.
 14. The method of claim 13,further comprising: executing a front-end portal application on saidhandheld computing device, wherein said application is affiliated withan entity associated with said handheld computing device, wherein saidapplication is configured to provide notification of games such as, saidgaming application that are supported by said handheld computing device;receiving a selection by a user for purchasing said gaming application;connecting said handheld computing device to network through acommunication interface; navigating to a third party content providerselling said gaming application through said network; and facilitatinginstallation of said gaming application on said handheld device.
 15. Themethod of claim 13, further comprising: encoding video from said gamingapplication into a video stream; and establishing a peer-to-peercommunication with a second device; transmitting said video stream oversaid peer-to-peer communication to said second device for display. 16.The method of claim 15, wherein said video encoder encodes said videousing an H.264 format.
 17. The method of claim 15, wherein said seconddevice is taken from a group consisting essentially of: a displayreceiver; a cable set-top box; a micro-console; an HD television; an HDmonitor; a second handheld computing device configured to executeanother version of said gaming application for purposes of multi-playergaming.
 18. A non-transitory computer-readable medium havingcomputer-executable instructions for causing a computer system toperform a method comprising: executing a gaming application on ahandheld computing device; receiving an input originating from at leastone control button, wherein said input provides an instruction for saidgaming application; and displaying video of said gaming application on ahigh definition display of said handheld computing device.
 19. Thecomputer-readable medium of claim 18, wherein said method furthercomprises: encoding video from said gaming application into a videostream; and establishing a peer-to-peer communication with a seconddevice; transmitting said video stream over said peer-to-peercommunication to said second device for display.
 20. Thecomputer-readable medium of claim 18, wherein said method furthercomprises: executing a front-end portal application on said handheldcomputing device, wherein said application is affiliated with an entityassociated with said handheld computing device, wherein said applicationis configured to provide notification of games such as, said gamingapplication that are supported by said handheld computing device,receiving a selection by a user for purchasing said gaming application;connecting said handheld computing device to network through acommunication interface; navigating to a third party content providerselling said gaming application through said network; and facilitatinginstallation of said gaming application on said handheld device.